Delphi XE2模拟键盘按键

2018-10-31

Delphi XE2模拟键盘按键
// 在 用友U6 V3.2 - 【产品采购】打开计算器
procedure TForm1.SpeedButton1Click(Sender: TObject);
Var
 c:Hwnd;
 b:Byte;
begin
 c:=FindWindow(nil,'用友U6 V3.2 - [产 品 采 购]');  //选择程序
 SetForegroundWindow(c);  // 先择程序
 keybd_event(VK_F9,0,0,0); //按下‘F9’
 keybd_event(VK_F9,0,KEYEVENTF_KEYUP,0);  //弹起‘F9’
end;

出现一个问题,当程序的标题改变时,就找不到窗口。不知有没有办法只匹配前面的 ‘用友U6 V3.2’
找到另一个方法了,用类名来获取就可以了
c:=FindWindow('ThunderRT6MDIForm',nil);  //选择程序
阅读24