如何在显示主窗体后自动弹出对话框? [重复]

问题描述 投票:0回答:1

我正在使用Delphi XE3。现在我需要在显示主窗体后弹出一个对话框。

我尝试将代码放在主窗体的FormShow事件处理程序中,如下所示:

    with TMyChildForm.Create(Self) do
    begin
      ShowModal();
      Free;
    end;

但是,这将导致在显示主窗体之前弹出ChildForm。

delphi
1个回答
0
投票

你需要延迟显示弹出窗体,直到OnShow退出。你可以:

  • 使用短计时器。
  • PostMessage()给自己一个自定义窗口消息。
  • 使用TThread.CreateAnonymousThread()TTask来打电话给TThread.Queue()
  • 使用TThread.ForceQueue()(仅限10.2东京及以后)。
© www.soinside.com 2019 - 2024. All rights reserved.