本实例介绍如何在自己的程序里面模拟鼠标的常用操作。
首先启动一个新的项目,在空白的窗体上添加4个TButton组件。添加组件后的窗体如图1所示。
图1 添加组件后的窗体 |
procedure TForm1.btnLClickClick(Sender: TObject); begin SetCursorPos(10,10); mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); end; |
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) btnMove: TButton; btnLClick: TButton; btnLDClick: TButton; btnRClick: TButton; procedure btnMoveClick(Sender: TObject); procedure btnLClickClick(Sender: TObject); procedure btnLDClickClick(Sender: TObject); procedure btnRClickClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.btnMoveClick(Sender: TObject); begin mouse_event(MOUSEEVENTF_MOVE,100,100,0,0); end; procedure TForm1.btnLClickClick(Sender: TObject); begin SetCursorPos(10,10); mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); end; procedure TForm1.btnLDClickClick(Sender: TObject); begin SetCursorPos(200,200); mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); end; procedure TForm1.btnRClickClick(Sender: TObject); begin SetCursorPos(200,200); mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0); end; end. |
图2 程序运行的初始画面 |
本程序介绍了如何在程序中模拟鼠标的常用操作,这一点在远程监控软件中非常重要,通过mouse_event函数就可以实现远程的鼠标管理和操作。