我想模拟鼠标单击一下屏幕上某一点坐标的位置,而且要能单击任何位于最前端的程序(外部程序)的某位置. 如题. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 procedure TForm1.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);begin label1.caption:=floattostr(Chart1.LeftAxis.CalcPosPoint( x ));end; var p:TPoint;p:=ScreenToClient(Mouse.CursorPos) procedure TForm1.ToolbarButton972MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);var mybit:Tbitbtn; point :Tpoint; form:Tform;begin form:=screen.ActiveForm; screen.cursor:=crdefault; if screen.ActiveForm.name<>'Form1' then begin GetCursorPos(Point); mybit:=Tbitbtn.Create(self); mybit.Parent:=Form; mybit.left:=point.x-form1.left-form.Left; mybit.Top:=point.y-form1.top-form.top end;end;TFrom 有个 ClientHeight用他减去 TForm.Height 就是 Title的高度了。 TO:jiaai(很丑也不温柔) 我要的是向某个坐标发出Click事件,即用我的程序实现单击外部程序某一位置的过程,而不需要我手动移动鼠标去单击这个位置. Api函数可以改变鼠标的位置,而且还可以模拟鼠标事件. 使用mouse_event函数看一下Delphi的帮助 procedure TForm1.Button1Click(Sender: TObject);beginsetcursorpos(横坐标,纵坐标); //将鼠标放到你指定的地点mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); //后面的四个参数是无意义的mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);end;还有一种方法就是通过MOUSEEVENTF_ABSOLUTE参数,将屏幕划为65535×65535,然后就可以利用第一个零,和第二个零来确定你要找的点的坐标,呵呵,可以了吧! 可以查看相关的api函数呀!f1帮助有的 江湖救急,一个正则表达式 菜鸟的调试问题 请教:打开工程是提示“Class TSWbemLocator not found”怎么解决 轻量级的IM工具。很小,但是文件传输方面的功能比较强大,速度也很不错。大家去试试看:) 排序问题,,请大家看一下... 关于还原数据库出问题了,帮帮忙啊 怎样同步执行一个外部exe文件 请教画心形的算法! 打开已存在的excel工作簿 是这样的吗? 怎么让dbgrid只显示查询结果的部分字段 又是钩子的问题!100分哦 控件无法安装的问题!!!!!!
Y: Integer);
begin
label1.caption:=floattostr(Chart1.LeftAxis.CalcPosPoint( x ));
end;
p:=ScreenToClient(Mouse.CursorPos)
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
mybit:Tbitbtn;
point :Tpoint;
form:Tform;
begin
form:=screen.ActiveForm;
screen.cursor:=crdefault;
if screen.ActiveForm.name<>'Form1' then
begin
GetCursorPos(Point);
mybit:=Tbitbtn.Create(self);
mybit.Parent:=Form;
mybit.left:=point.x-form1.left-form.Left;
mybit.Top:=point.y-form1.top-form.top
end;
end;TFrom 有个 ClientHeight
用他减去 TForm.Height 就是 Title的高度了。
我要的是向某个坐标发出Click事件,即用我的程序实现单击外部程序某一位置的过程,而不需要我手动移动鼠标去单击这个位置.
begin
setcursorpos(横坐标,纵坐标); //将鼠标放到你指定的地点
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); //后面的四个参数是无意义的
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
end;还有一种方法就是通过MOUSEEVENTF_ABSOLUTE参数,将屏幕划为65535×65535,然后就可以
利用第一个零,和第二个零来确定你要找的点的坐标,呵呵,可以了吧!