为了账号安全,请及时绑定邮箱和手机立即绑定

使用c#调用的,但是我不会使用后面这个鼠标事件?请问该怎么办?

使用c#调用的,但是我不会使用后面这个鼠标事件?请问该怎么办?

潇潇雨雨 2022-06-17 15:11:44
/// <summary>/// 这个类可以让你得到一个在运行中程序的所有鼠标事件/// 并且引发一个带MouseEventArgs参数的.NET鼠标事件以便你很容易使用这些信息/// </summary>public class MouseHook{private const int WM_MOUSEMOVE = 0x200;private const int WM_LBUTTONDOWN = 0x201;private const int WM_RBUTTONDOWN = 0x204;private const int WM_MBUTTONDOWN = 0x207;private const int WM_LBUTTONUP = 0x202;private const int WM_RBUTTONUP = 0x205;private const int WM_MBUTTONUP = 0x208;private const int WM_LBUTTONDBLCLK = 0x203;private const int WM_RBUTTONDBLCLK = 0x206;private const int WM_MBUTTONDBLCLK = 0x209;//全局的事件public event MouseEventHandler OnMouseActivity;(就这个东西)static int hMouseHook = 0; //鼠标钩子句柄//鼠标常量...............................................................中间省略很多//从回调函数中得到鼠标的信息MouseHookStruct MyMouseHookStruct = (MouseHookStruct)Marshal.PtrToStructure(lParam, typeof(MouseHookStruct));MouseEventArgs e = new MouseEventArgs(button, clickCount, MyMouseHookStruct.pt.x, MyMouseHookStruct.pt.y, 0);OnMouseActivity(this, e);(怎么使用这个onMouseActivity?)}return CallNextHookEx(hMouseHook, nCode, wParam, lParam);}}}
查看完整描述

1 回答

?
qq_笑_17

TA贡献1818条经验 获得超7个赞

直接为OnMouseActivity事件注册响应方法就行了
例如:
MouseHook mh =new MouseHook();
mh.OnMouseActivity += new MouseEventHandler(mh_OnMouseActivity);

事件响应方法:
private void mh_OnMouseActivity(object source, MouseEventArgs e)
{
//操作
}


查看完整回答
反对 回复 2022-06-20
  • 1 回答
  • 0 关注
  • 213 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号