发送点击消息的问题
1、前提某窗口已经打开
我得到该窗口和上面确定键句柄后,
::SendMessage(hWnd,BM_CLICK,0,0);后却没有点击,但可以看到那个确定键有焦点(就像用TAB移上去效果一样)
然后再::SendMessage(hWnd,BM_CLICK,0,0);一次就真的点击了
2、前提该窗口没有打开
用WinExec(。。。)打开后并得到按键句柄
::SendMessage(hWnd,BM_CLICK,0,0);就直接点击了,不用发送两次
问为何(1)要两次才行?
问题点数:20、回复次数:7Top
1 楼kugou123(酷狗)(彪悍的人生,不需要解释 www.xiaozhou.net)回复于 2004-09-04 10:18:05 得分 10
试试发送WM_LBUTTONDOWN消息看看。Top
2 楼askppp()回复于 2004-09-04 10:48:55 得分 0
我试过:
::SendMessage(hWnd,WM_LBUTTONDOWN,0,0);
::SendMessage(hWnd,WM_LBUTTONUP,0,0);
也要两下
要这样才行:
::SendMessage(hWnd,WM_LBUTTONDOWN,0,0);
::SendMessage(hWnd,WM_LBUTTONUP,0,0);
::SendMessage(hWnd,WM_LBUTTONDOWN,0,0);
::SendMessage(hWnd,WM_LBUTTONUP,0,0);
Top
3 楼askppp()回复于 2004-09-05 19:06:08 得分 0
upTop
4 楼ddszhan(高等数学)回复于 2004-09-05 22:59:20 得分 10
是不是焦点不在打开的窗口啊!Top
5 楼askppp()回复于 2004-09-06 13:40:46 得分 0
先前我也是这样认为的
但是我WinExec(。。。)启动这个程序后,得到他的窗口句柄,然后ShowWindow(...,SW_HIDE),(按照MSDN的说法Hides the window and activates another window.就是说隐藏这个窗口并激活另一个),即也没有焦点,然后我再::SendMessage(hWnd,BM_CLICK,0,0);也是一次成功。
还有为什么没有焦点就不行?Top
6 楼askppp()回复于 2004-09-09 21:09:59 得分 0
upTop
7 楼askppp()回复于 2004-09-11 15:28:27 得分 0
upTop




