向一个知道句柄的窗口发送键盘消息,用sendmessage里面的WM_CHAR可以但是为什么WM_KEYDOWN接收不到,呢

2025-02-18 13:03:31
推荐回答(2个)
回答1:

接收没什么任何问题

procedure MM(var MSG:TMessage);message WM_KEYDOWN;

procedure TDemo.MM(var MSG: TMessage);
begin
ShowMessage('123');
end;

procedure TDemo.SpeedButton1Click(Sender: TObject);
begin
PostMessage(Handle,WM_KEYDOWN,VK_RETURN,0);
end;

回答2:

好像WM_CHAR跟WM_KEYDOWN没有什么必然联系!

你直接发送Keydown不就完了吗?PostMessage(XXX,WM_KEYDOWN,VK_RETURN,0);