gpt4 book ai didi

delphi - Application.CreateForm() 形成可见性/状态

转载 作者:行者123 更新时间:2023-12-01 19:17:53 28 4
gpt4 key购买 nike

创建多表单 VCL 应用程序时,使用 TApplication.CreateForm() 创建的表单的状态如何?是否有对 WinAPI 的调用将它们设置为不可见状态,或者是否由某些 VCL 内部工作处理?

  Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2); // Invisible
Application.CreateForm(TForm3, Form3); // Invisible
Application.Run;

最佳答案

使用 Application.CreateForm() 创建的第一个表单将成为应用程序的 MainForm,并将由 Application.Run() 如果 Application.ShowMainForm 为 true,则 MainForm 的 WindowState 不是 wsMinimized,并且进程不是使用 SW_SHOWMINNOACTIVE 创建的 指定标志。

仅当其 Visible 属性设置为 True 时,由 Application.CreateForm() 创建的所有其他表单才会自动显示。默认情况下,IDE 将辅助表单的 Visible 属性设置为 False

请注意,在应用程序启动时自动创建所有表单通常不是一个好主意。您应该从“项目选项”的自动创建列表中删除第二个和第三个表单,然后在实际需要时在代码中动态创建它们。您甚至可以将 IDE 设置为默认情况下不自动创建辅助表单。

关于delphi - Application.CreateForm() 形成可见性/状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29786757/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com