嘿,我正在使用D 1.041 with Tango 0.99.8并想知道如何移动鼠标并模拟键盘按下并从屏幕获取信息,例如特定坐标上特定像素的颜色。我正在使用Windows。
非常感谢任何帮助。我想编写一个基于类的库,其功能类似于AutoIt。例如:
mouse.move(100, 200);
mouse.click(2); // 2 = Middle Mouse Click
keyboard.type('abc');
import tango.sys.win32.UserGdi;
class Mouse{
alias SetCursorPos set_pos;
alias GetCursorPos get_pos;
void left_click(){
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0);
}
void right_click(){
mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0);
mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0);
}
}
此代码给出了以下错误:
错误42:符号未定义 _mouse_event @ 16 --- errorlevel 1
对此有何帮助?我还在使用version。
答案 0 :(得分:2)
这是Tango的一个错误。
Tango将mouse_event声明为:
void mouse_event(DWORD, DWORD, DWORD, DWORD);
而MSDN表示它需要5个参数,而不是4个。
对于严肃的Win32开发,您应该查看Windows API bindings项目。