如何模拟鼠标左键点击动作

ADWARDS00 2004-03-30 10:29:21
1.如何模拟鼠标左键点击动作
2.
procedure TForm1.Button1Click(Sender: TObject);
var
hwndNotepad : THandle;
begin
hwndNotepad := FindWindow('delphi32',nil); //找不到
//hwndNotepad := FindWindow('notepad',nil);这个可以找到
if hwndNotepad=0 then
begin
ShowMessage('Not found');
Exit;
end;
end;
这段话找不到DELPHI的窗口(其它窗口也不行),但是改成找记事本的窗口句并就可以
...全文
132 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jacky_shen 2004-03-30
  • 打赏
  • 举报
回复
int GetClassName(

HWND hWnd, // handle of window
LPTSTR lpClassName, // address of buffer for class name
int nMaxCount // size of buffer, in characters
);

可以得到类名。

而 delphi 内定的类名是 TAppBuilder。

试试下面的代码:
// 需要放置一个TTimer控件
procedure TForm1.Timer1Timer(Sender: TObject);
var
Pt: TPoint;
CurrentHandle: THandle;
ClassName: array[0..1023] of Char;
begin
GetCursorPos(Pt);
CurrentHandle := WindowFromPoint(Pt);
GetClassName(CurrentHandle, ClassName, Length(ClassName));
Caption := ClassName;
end;


ADWARDS00 2004-03-30
  • 打赏
  • 举报
回复
那这个TAPPBUILDER在哪里能找到呢?我是在进程里面查找的
jacky_shen 2004-03-30
  • 打赏
  • 举报
回复
HWND FindWindow(

LPCTSTR lpClassName, // pointer to class name
LPCTSTR lpWindowName // pointer to window name
);

第一个参数是给出的类名 delphi 的类名是 TAppBuilder。
jacky_shen 2004-03-30
  • 打赏
  • 举报
回复
procedure TForm1.Button7Click(Sender: TObject);
var
hwndNotepad : THandle;
begin
hwndNotepad := FindWindow('TAppBuilder', nil); // 是TAppBuilder
if hwndNotepad=0 then
begin
ShowMessage('Not found');
Exit;
end
else
ShowMessage('found');
end;
ADWARDS00 2004-03-30
  • 打赏
  • 举报
回复
鼠标操作已经找到了,第二问题还没解决

5,930

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧