永发信息网

Delphi 模拟鼠标点击

答案:3  悬赏:20  手机版
解决时间 2021-04-25 02:01
  • 提问者网友:我是我
  • 2021-04-24 15:36
比如 我有个活动的窗口 Form1 我想点击 Form窗口顶点(也就是这个窗体左上角的坐标)坐标 X,Y 各加 50 的 位置的按钮 求源码
最佳答案
  • 五星知识达人网友:佘樂
  • 2021-04-24 15:43

调用API函数  可以直接调用 我下面写的是VB程序  因手里没有DELPHI但 你略做修改即可。


Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10  这以上是下面用到的常量 代表的数值


mouse_event MOUSEEVENTF_ABSOLUTE Or MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 1, 1, 0, 0    这句是模拟鼠标点击的那句


然后就是需要移动 鼠标了    SetCursorPos 100,100  这样是设置鼠标到屏幕的 100,100的位置


可根据你自己的需要修改    如果你有一定编程基础我上面的这些就已经能够帮你了。


特殊声明:API在VB里需要声明 在DELPHI里不需要声明 直接调用即可。 (最上面的那些常量 可以直接带到函数里使用。)

全部回答
  • 1楼网友:迷人又混蛋
  • 2021-04-24 18:08
可以使用 Windows API mouse_event 实现,详细使用方法可以查询MSDN。
  • 2楼网友:妄饮晩冬酒
  • 2021-04-24 17:11

如果精确度不需要太高

  先用setcursorpos把鼠标移到目标位置,然后

  mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);   mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯