鼠标钩子
lHook(1) = SetWindowsHookEx(WH_MOUSE_LL, AddressOf CallMouseHookProc, App.hInstance, 0)
-----
Public Function CallMouseHookProc(ByVal code As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
我不懂那个code,wParam,lParam分别什么意思
怎样理解回调函数中的那些参数
答案:2 悬赏:40
解决时间 2021-02-20 20:33
- 提问者网友:曖昧情执
- 2021-02-19 19:36
最佳答案
- 二级知识专家网友:woshuo
- 2021-02-19 20:35
回调函数用于异步操作中,就是让系统等待某个事件发生,并且告诉系统,事件发生后用哪个函数去处理,这个函数就叫回调函数,事件发生后,系统自动调用这个函数。而程序可以去做其它事件,不用等待事件。
这里WndProc这个函数就是告诉系统,接收到消息后就这个函数来处理。
HWND hWnd 这个参数不能不设,因为系统调用这个函数时是认为有这个参数的,你不设,调用就会出错,这是回调函数,是系统来调用,而不是你自己去调用。
你不用管这个问题,虽然WNDCLASS定义是在CreateWindow之前,但CreateWindow之前是没有消息的,所以不会调用WndProc,也就不会出错。wndClass.lpfnWndProc = WndProc;只是让系统知道消息函数的地址在哪里,在没有调用DispatchMessage(&msg); 之前是不会调用WndProc的。
这样解释不是很好,希望你能理解。
很不错哦,你可以参考下的
2011-7-22 23:09:26
这里WndProc这个函数就是告诉系统,接收到消息后就这个函数来处理。
HWND hWnd 这个参数不能不设,因为系统调用这个函数时是认为有这个参数的,你不设,调用就会出错,这是回调函数,是系统来调用,而不是你自己去调用。
你不用管这个问题,虽然WNDCLASS定义是在CreateWindow之前,但CreateWindow之前是没有消息的,所以不会调用WndProc,也就不会出错。wndClass.lpfnWndProc = WndProc;只是让系统知道消息函数的地址在哪里,在没有调用DispatchMessage(&msg); 之前是不会调用WndProc的。
这样解释不是很好,希望你能理解。
很不错哦,你可以参考下的
2011-7-22 23:09:26
全部回答
- 1楼网友:虚伪的现实
- 2021-02-19 21:19
经常碰到有人问:事件中怎么获取某个对象?事件中的参数有什么用?我要某个数据,怎么在事件中获取?其实,要解决这个问题很简单,甚至不用看api,自己去分析一下就好了。要做分析,只要在事件的回调函数内加入以下语句:console.log(arguments);然后在firebug中,就会把所有参数都列出来了。通过在dom面板对这些对象进行分析,就能获得大部分需要的信息了。如果在这些参数中获取不到需要的对象或者信息,那么就可以考虑根据返回的对象,使用up、down方法找到合适的组件,或者使用全局变量的方法(这个不建议)。如果是要获取store,可以用getstore,lookup等方法。一般带store的组件,都会有getstore方法,或直接访问store属性就能获取到store。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯