zoukankan
html css js c++ java
c#中通过设置钩子监视鼠标移动
这个问题来自论坛提问,C#的大致代码如下
using
System;
using
System.Windows.Forms;
using
System.Runtime.InteropServices;
namespace
WindowsApplication1
...
{
public
partial
class
Form1 : Form
...
{
public
Form1()
...
{
InitializeComponent();
}
private
void
Form1_Load(
object
sender, EventArgs e)
...
{
Win32Hook hook
=
new
Win32Hook();
hook.onMouseChange
+=
new
EventHandler(hook_onMouseChange);
hook.SetHook();
}
void
hook_onMouseChange(
object
sender, EventArgs e)
...
{
this
.Text
=
Cursor.Position.ToString();
}
}
public
class
Win32Hook
...
{
[DllImport(
"
kernel32
"
)]
public
static
extern
int
GetCurrentThreadId();
[DllImport(
"
user32
"
,CharSet
=
CharSet.Auto, CallingConvention
=
CallingConvention.StdCall)]
public
static
extern
int
SetWindowsHookEx(
HookType idHook,
HOOKPROC lpfn,
int
hmod,
int
dwThreadId);
public
enum
HookType
...
{
WH_GETMESSAGE
=
3
}
public
delegate
int
HOOKPROC(
int
nCode,
int
wParam,
int
lParam);
public
event
System.EventHandler onMouseChange;
public
void
SetHook()
...
{
SetWindowsHookEx(HookType.WH_GETMESSAGE,
new
HOOKPROC(
this
.MyKeyboardProc),
0
,
GetCurrentThreadId());
}
public
int
MyKeyboardProc(
int
nCode,
int
wParam,
int
lParam)
...
{
if
(onMouseChange
!=
null
)
...
{
onMouseChange(
null
,
null
);
}
return
0
;
}
}
}
查看全文
相关阅读:
mysql 数据库备份
半同步复制
mysql在线热备
mysqlxtrabackup备份
MySQL备份与恢复
Mysql语句类型
MySQL的体系结构
MySQL介绍及安装
Shell-02-if
Shell 脚本进阶,经典用法及其案例
原文地址:https://www.cnblogs.com/cl1024cl/p/6204956.html
最新文章
新手怎样学好Java
三、spring——动态代理模式(AOP)
十五、关于request.getServletPath(),request.getContextPath()的总结
九、JDBC连接ORACLE的三种URL格式
十四、JS页面权限最大化(禁止iframe引用)
十三、监听器——网页在线人数
mysql视图的作用(详细)
十二、JSTL标签库
十一、EL表达式
十、Servlet之Cookie和Session
热门文章
九、IDEA的Tomcat配置Web的项目创建以及Servlet简单运行。
python修改图片名
python更改图片后缀名为jpg格式
用python遍历一个图片文件夹,并输出所有路径到一个 txt 文件
卷积神经网络
EM算法
HMM
AdaBoost
Ubuntu16.04配置网卡
MeanShift 均值漂移算法
Copyright © 2011-2022 走看看