VC++/MFC中用PostMessage发送鼠标点击事件
假设一个窗口句柄为1234,我想在此窗口最小化后,仍能实现点击确定键按钮(假设这个键的坐标为100,100)函数原型:B00LPostMessage(HWNDhWnd,U...
假设一个窗口句柄为1234,我想在此窗口最小化后,仍能实现点击确定键按钮(假设这个键的坐标为100,100)函数原型:B00L PostMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);PostMessage(1234, WM_LBUTTONDOWN, ???, ???);后面2个参数怎么填? 怎么把坐标值也一块发送出去?要求 窗口最小化后,仍能实现,喊我用mouse_event的就不要来了。。。
展开
2个回答
展开全部
坐标值应该是lParam,使用MAKEWPARAM合成,代码如下:
int x=100,y=100;
LPARAM lParam = MAKEWPARAM(x,y);
::PostMessage(1234, WM_LBUTTONDOWN, 1, lParam);
但这样1234窗口只响应OnLButtonDown事件,而不会响应 点击确认按钮的事件,我理解与你的要求不符合。正确的做法如下:
找到1234确认按钮对应的按钮ID,很多为1,假设为IDC_OKBT,然后发送消息
::PostMessage(1234,WM_COMMAND,MAKEWPARAM(IDC_OKBT,BN_CLICKED),0);
int x=100,y=100;
LPARAM lParam = MAKEWPARAM(x,y);
::PostMessage(1234, WM_LBUTTONDOWN, 1, lParam);
但这样1234窗口只响应OnLButtonDown事件,而不会响应 点击确认按钮的事件,我理解与你的要求不符合。正确的做法如下:
找到1234确认按钮对应的按钮ID,很多为1,假设为IDC_OKBT,然后发送消息
::PostMessage(1234,WM_COMMAND,MAKEWPARAM(IDC_OKBT,BN_CLICKED),0);
2012-02-25
展开全部
这个由你自己决定的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询