在我的Delphi表单的OnShow方法中,我确定在打开表单后必须自动打开一个对话框 – 我应该可以通过模拟menuitem上的点击来完成此操作. 但是,调用menuitem.Click会在主窗体打开之前显示对话框
但是,调用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;