postmessage发消息失败(50分)

  • 主题发起人 主题发起人 月满C楼
  • 开始时间 开始时间

月满C楼

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
showmessage('Keydown!');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
postmessage(edit1.Handle,wm_keydown,vk_return,1);
end;
//点击button1的时候程序卡住了,看不到Edit1KeyDown的弹出效果
 
PostMessage(Edit1.Handle, WM_KEYDOWN, Ord('A'), 0);
不要发送回车,那样会一直触发Button1的OnClick事件
 
Sendmessage(edit1.Handle,wm_keydown,vk_return,1);就可以了
 
先让它Focus就没有问题
postmessage(edit1.Handle,WM_SETFOCUS,edit1.Handle,0);
postmessage(edit1.Handle,WM_KEYDOWN,vk_return,0);
 
最后一楼正解
 

Similar threads

I
回复
0
查看
470
import
I
I
回复
0
查看
489
import
I
S
回复
0
查看
763
SUNSTONE的Delphi笔记
S
后退
顶部