SendMessage(hWnd, 0x0201, 1,y * 65536 + x);
SendMessage(hWnd, 0x0202, 1,y * 65536 + x);
这两句是什么意思,详细
windowsapi的一个函数问题,C语言 C++ C#学者帮忙解答
答案:3 悬赏:30 手机版
解决时间 2021-02-15 17:53
- 提问者网友:我们很暧昧
- 2021-02-14 22:46
最佳答案
- 五星知识达人网友:想偏头吻你
- 2021-02-14 23:46
LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);
该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。
#define WM_LBUTTONDOWN 0x0201
也就是说向窗口发送一个 鼠标左键按下的消息
观楼主英俊潇洒、风流倜傥,必当世之豪杰,诚邀楼主加入0x30百度贴吧,共商义举,成千秋霸业。
该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。
#define WM_LBUTTONDOWN 0x0201
也就是说向窗口发送一个 鼠标左键按下的消息
观楼主英俊潇洒、风流倜傥,必当世之豪杰,诚邀楼主加入0x30百度贴吧,共商义举,成千秋霸业。
全部回答
- 1楼网友:七十二街
- 2021-02-15 01:38
楼主您好:
从百科可以查询到原型
SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);
第一个参数HWND hWnd
故名思议是窗体句柄,你这儿作为参数传递进来了
第二个参数UINT Msg
是windows消息常量,这里使用到两个0x201,0x202,百科可以查询到,如下:
WM_LBUTTONDOWN = $0201;//按下鼠标左键
WM_LBUTTONUP = $0202;//释放鼠标左键
第三个参数WPARAM wParam
MSDN里头有这么一段
WM_LBUTTONDOWN
WPARAM wParam
LPARAM lParam;
Parameters
wParam
Indicates whether various virtual keys are down. This parameter can be one or more of the following values.
MK_CONTROL
The CTRL key is down.
MK_LBUTTON
The left mouse button is down.//这句是重点了,
而后我查找MK_LBUTTON的值,就是定义为 0x01.所以第三个参数为1。
第四个参数LPARAM IParam
MSDN里说到
lParam
The low-order word specifies the x-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
The high-order word specifies the y-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
这里说到低位代表X坐标,指向左上角,高位则代表Y坐标。这是一共32位数据。从代码中的y * 65536 + x参数不难分析到,y * 65536相当于<<16。65536代表16位数据的数据量,这个是属于位的运算。高16位代表了X坐标值,低16位为Y值。
所以,这两句应该是在窗体句柄中模拟鼠标左键点击。
希望对你有帮助,望采纳。
- 2楼网友:慢性怪人
- 2021-02-15 01:06
c++的api和windows api没有什么区别,windows api可以在很多编程语言中使用,在c++中当然也可以使用,而不是所谓的c++api,不过不同语言的调用方式不同罢了。至于mfc,是微软的应用程序框架。把常用的一些功能封装成了类,内部使用api函数实现的,所以用mfc开发程序要比直接用api简单,但是因为是别人封装的功能上有一定的局限性。个人认为开发程序还是首选mfc,但是api一定要学。在mfc环境开发程序也是可以使用api的,当mfc本身提供的类不能满足要求是就可以自己用api来实现某些特定的功能,甚至重写他的类。在vc6中设计彩色按钮等特殊界面效果时一般都是这样弄的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯