读书人

VC 用mouse_event模拟鼠标点符号击经常

发布时间: 2013-01-04 10:04:18 作者: rapoo

VC 用mouse_event模拟鼠标点击经常会不准为什么?
SetCursorPos(1348,233);
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
Sleep(1000);
mouse_event(MOUSEEVENTF_MOVE,0,300,0,0);
Sleep(1000);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
///////////////已下开始坐标点击不准,我的坐标是屏幕坐标///////////////////
Sleep(1000);
SetCursorPos(472,356);
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
Sleep(1000);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
//////////////////////////////
Sleep(1000);
keybd_event(VK_CONTROL, 0, 0 ,0);
keybd_event('V', 0, 0,0);
keybd_event('V', 0, KEYEVENTF_KEYUP ,0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP ,0);
////////////////////////////////
SetCursorPos(355,435);
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
Sleep(3000);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
[解决办法]
可能要用到坐标转化
ClientToScreen或者ScreenToClient,具体哪个我记不清了,你试一下
[解决办法]
用SetCursorPos能明显的看到鼠标被设到了哪里
如果没有对准肯定是坐标有问题
[解决办法]
为什么要用mouse_event模拟鼠标呢?
直接用PostMessage发送鼠标按下消息不更好吗?
[解决办法]
试试
mouse_event(MOUSEEVENTF_LEFTDOWN
[解决办法]
MOUSEEVENTF_ABSOLUT,0,0,0,0);


[解决办法]
MOUSEEVENTF_ABSOLUTE
[解决办法]
用SendMessage WM_LBUTTONDOWN WM_LBUTTONUP 来处理

读书人网 >VC/MFC

热点推荐