VS编程,WPF中,获取鼠标相对于当前屏幕坐标的一种方法
2024-10-01 21:59:37
原文:VS编程,WPF中,获取鼠标相对于当前屏幕坐标的一种方法
版权声明:我不生产代码,我只是代码的搬运工。 https://blog.csdn.net/qq_43307934/article/details/82909383
此方法只是鼠标相对于当前屏幕的坐标数值,而不是鼠标相对于当前程序窗口的坐标值。
效果
1、前台增加一个用于显示的文本控件
注意给控件命名
2、为整个界面定义鼠标移动事件
3、后台代码中增加如下代码:
[DllImport("User32")]
public extern static void SetCursorPos(int x, int y);
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern bool GetCursorPos(out POINT pt);
public struct POINT
{
public int X;
public int Y;
public POINT(int x, int y)
{
this.X = x;
this.Y = y;
}
}
像这样
3、在鼠标移动事件中,增加代码
POINT p = new POINT();
if (GetCursorPos(out p))//API方法
{
Textblock2.Text = string.Format("X:{0} Y:{1}", p.X, p.Y);
}
像这样
需要注意的是,虽然显示了鼠标对于电脑屏幕的坐标值,但是因为代码写了程序窗口的鼠标移动事件中,所以当鼠标在程序区域之外时,会因为无法触发这段代码而使坐标值无法更新,你可以后台定义一个定时器,将代码放在定时器中执行。
若不知如何定义定时器,可参见我的其它文章。
最新文章
- 如何用java自带的工具生成证书
- Linux Shell系列教程之(十六) Shell输入输出重定向
- 用命令访问D:\python学习\wendjia教程\aa.py
- JEvaluator Jscript.net
- mysql中int转varchar
- WFP: 读取XPS文件或将word、txt文件转化为XPS文件
- Python天天美味(15) - Python正则表达式操作指南(re使用)(转)
- WIN7 XP设置MTU,提升下载速度
- 如何升级cordova插件
- 【仿携程JQuery日期价格表】
- WebApi2官网学习记录---Cookie
- IE 中创建 子窗口 传值 与接收值 【window.showModalDialog】
- LeetCode OJ 189. Rotate Array
- Bootstrap中的datetimepicker用法,只看一眼就全懂了
- Java基础笔记2
- FPGA学习笔记(五)—— 组合逻辑电路功能的描述
- Bugku-CTF之速度要快
- Unity长连接
- 在excel中将缺失数据全部用0补齐
- 20155306 2016-2017-2 《Java程序设计》第十周学习总结
热门文章
- js替换数组中字符串实例
- Expo大作战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式
- Expo大作战(十五)--expo中splash启动页的详细机制
- Python+Selenium笔记(七):WebDriver和WebElement
- SQL语句结合上下文查询(in查询)
- 转:.NET 面试题汇总(二)
- [Hive_1] Hive 基本概念
- MySQL基础之 恢复数据和数据库迁移
- win7 win10双系统开机系统引导
- .net core 入坑经验 - 1、await async