下面这段代码如果是发送到计算器就可以,可是发送到别的程序就不行,为什么啊???(窗口已正确找到,发送WM_CLOSE消息的可以成功关闭该应用程序,可是发送回车就不起作用。)procedure TfrmTestProgram.Button28Click(Sender: TObject);
var
appWnd : HWnd;
begin
appWnd := FindWindow(nil, PCHAR('SnagIt'));
if appWnd <> 0 then
begin
setForegroundWindow(appWnd);
keybd_event(vk_return, mapVirtualKey(vk_return,0), 0, 0);
keybd_event(vk_return, mapVirtualKey(vk_return,0), 1, 0);
//SendMessage(appWnd,WM_KEYDOWN,VK_RETURN,0);
end;end;
var
appWnd : HWnd;
begin
appWnd := FindWindow(nil, PCHAR('SnagIt'));
if appWnd <> 0 then
begin
setForegroundWindow(appWnd);
keybd_event(vk_return, mapVirtualKey(vk_return,0), 0, 0);
keybd_event(vk_return, mapVirtualKey(vk_return,0), 1, 0);
//SendMessage(appWnd,WM_KEYDOWN,VK_RETURN,0);
end;end;
解决方案 »
- delphi 数据集有lookup字段后不能编辑保存
- 【热】秩为0的 SafeArray 被传递到需要秩为1的数组的方法中【请教】
- DELPHI什么控件可以显示邮件文件(.EML)的正文和附件?
- 散分,和昨天理由一样
- 各位有没有做过黑白棋程序的?
- 如何让Table1指针指到Query1查询结果?
- 向数据库高手讨教.
- 如何在TSTRINGGRID中动态产生TCHECK?
- ADO连接到ACCSEE2000.编写的程序..发放时还需要安装别的东西码?
- [高手请进,SQL服务器数据备份方案(程序中)]
- 如何实现DBGrid的单元格可以下拉选择?并且dbgrid的数据修改之后如何保存到数据库中?
- 特急:为什么每次我在DELPHI中编译程序的时候就会出现这样的提示,然后就进入DEBUG状态。
焦点在哪个按钮上,Label1的标题就会变成哪个按钮的标题,但是如果其中一个按钮的Default属性被设置成True,则只有这一个按钮能接收消息unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Button2: TButton;
Button3: TButton;
Button4: TButton;
procedure FormCreate(Sender: TObject);
private
procedure ButtonClick(Sender: TObject);
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ButtonClick(Sender: TObject);
begin
label1.Caption:= TButton(Sender).Caption;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
Button1.OnClick := ButtonClick;
Button2.OnClick := ButtonClick;
Button3.OnClick := ButtonClick;
Button4.OnClick := ButtonClick;
end;end.