当前位置 : 主页 > 编程语言 > delphi >

delphi – 将WM_COMMAND发送到TMenuItem

来源:互联网 收集:自由互联 发布时间:2021-06-23
在我的Delphi表单的OnShow方法中,我确定在打开表单后必须自动打开一个对话框 – 我应该可以通过模拟menuitem上的点击来完成此操作. 但是,调用menuitem.Click会在主窗体打开之前显示对话框
在我的Delphi表单的OnShow方法中,我确定在打开表单后必须自动打开一个对话框 – 我应该可以通过模拟menuitem上的点击来完成此操作.

但是,调用menuitem.Click会在主窗体打开之前显示对话框 – 这不是我想要的.

我希望这应该做我想要的,但我找不到要通过“wparam”将点击发送到我的menuitem的参数.

PostMessage(handle, WM_COMMAND, wparam, 0)

MSDN WM_COMMAND docs谈论IDM_ *标识符,但它在Delphi中是如何出现的?

也许您可以尝试在OnActivate事件中打开对话框?
我不确定OnActivate是否会在显示表单时再次被触发但是如果它可以使用:

procedure TForm1.FormActivate(Sender: TObject);
begin
  Form2.ShowModal;
  Self.OnActivate := nil;
end;
网友评论