lke*_*ler 3 delphi mouseevent sendinput
我Mouse_Event在Delphi 2009 中使用了这个函数,但是Delphi的文档说这个函数已被取代并SendInput代替使用.
Delphi SendInput文档定义了语法和参数,但没有示例,也不清楚如何使用该函数.我在网上浏览过,找不到任何好的Delphi示例.
具体来说,我试图模拟左鼠标然后向上.目前我这样做Mouse_Event如下:
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)
我该如何使用SendInput?
跟进:
我最终留下了我的代码,就像@David建议的那样.
但我给了@ opc0de答案,因为他确实回答了我的问题.但是,我不能保证它是正确的,因为我从来没有尝试过.
以下是如何模拟左键单击以获取更多详细信息,请访问http://msdn.microsoft.com/en-us/library/ms646310(VS.85).aspx
var
eu: array [0..1] of TInput;
begin
ZeroMemory(@eu,sizeof(eu));
eu[0].Itype := INPUT_MOUSE;
eu[0].mi.dwFlags :=MOUSEEVENTF_LEFTDOWN;
eu[1].Itype := INPUT_MOUSE;
eu[1].mi.dwFlags :=MOUSEEVENTF_LEFTUP;
SendInput(2,eu[0],sizeof(TInput));
end;
Run Code Online (Sandbox Code Playgroud)
这是模拟右键单击
var
eu: array [0..1] of TInput;
begin
ZeroMemory(@eu,sizeof(eu));
eu[0].Itype := INPUT_MOUSE;
eu[0].mi.dwFlags :=MOUSEEVENTF_RIGHTDOWN;
eu[1].Itype := INPUT_MOUSE;
eu[1].mi.dwFlags :=MOUSEEVENTF_RIGHTUP;
SendInput(2,eu[0],sizeof(TInput));
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5437 次 |
| 最近记录: |