标题:请教C调用WIN32 API控制鼠标的问题
取消只看楼主
sunus
Rank: 4
等 级:业余侠客
威 望:3
帖 子:47
专家分:234
注 册:2017-10-10
结帖率:100%
已结贴  问题点数:20 回复次数:4 
请教C调用WIN32 API控制鼠标的问题
补充:XP上正常,只在WIN7上有这个情况。
------------------------------------------
最近在学习如何用C调用WIN API控制鼠标,于是写了下面这段小程序,编译运行都正常,但现在有个问题实在不明白,特来请教各位大佬:
运行程序后,能正常移动到桌面左上角,并左击一次左上角的图标(一个文件夹),但不能按原意双击打开,也就是看起来像两次左击只有第一次有效,第二次就无效了。但如果这里是别的东西,比如C编辑器、记事本什么的,就能正确的实现双击,请问这是为什么?
试过在两次单击之间加入一点延迟,但还是无法实现双击。
系统是WIN7。谢谢各位!
程序如下:
程序代码:
#include <windows.h>
int main(int argc, char *argv[])
{
    SetCursorPos(20, 20);
    mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 );
    mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 );
    return 0;
}


[此贴子已经被作者于2017-10-11 10:10编辑过]

搜索更多相关主题的帖子: 调用 API 控制 鼠标 双击 
2017-10-10 11:44
sunus
Rank: 4
等 级:业余侠客
威 望:3
帖 子:47
专家分:234
注 册:2017-10-10
得分:0 
回复 3楼 吹水佬
不行。。。。。。。。
我在XP上试了,正常,只在WIN7上有这个情况,不知道是怎么会事儿。
2017-10-11 10:09
sunus
Rank: 4
等 级:业余侠客
威 望:3
帖 子:47
专家分:234
注 册:2017-10-10
得分:0 
回复 2楼 wp231957
程序里执行了两次左击,其实就是模拟一次双击。
2017-10-11 10:10
sunus
Rank: 4
等 级:业余侠客
威 望:3
帖 子:47
专家分:234
注 册:2017-10-10
得分:0 
回复 7楼 吹水佬
没有拦截。如果双击的地方是其他软件的窗口,比如编辑器、第三方浏览器之类的,就能正常双击,只有在双击Expleror时会出问题,比如桌面、WINDOWS资源管理器。
我只是想知道为什么。
2017-10-12 14:39
sunus
Rank: 4
等 级:业余侠客
威 望:3
帖 子:47
专家分:234
注 册:2017-10-10
得分:0 
回复 9楼 吹水佬
有道理,我找台机器试试。
2017-10-13 15:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-481233-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.368149 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved