应用程序最小化时隐藏表单

jpf*_*ius 7 windows delphi delphi-xe

我有一个主表单和状态表单,我在我的应用程序中进行工作时显示.如果工作完成,我只需调用Hide状态表单,状态表单就会消失.

当我在等待表单可见时最小化主表单时,我的问题就出现了.然后隐藏这两种形式,这就是我想要的.但是,如果工作在主窗体最小化时完成,那么当我恢复它时,状态窗体也会恢复,即使Hide已在最小化时调用它.

Visible似乎是False对状态表单应用程序最小化时,因此呼吁Hide似乎没有任何效果(帮助说,它只是设置VisibleFalse).

这些观察是否正确?当应用程序再次获得焦点时,表单可见性如何恢复?在应用程序最小化时如何隐藏表单?

And*_*and 2

警告:我不能 100% 确定以下方法是否安全。

如果您不需要相同的表单对象在应用程序的生命周期内保持活动状态(您很可能不需要),那么您可以尝试禁用弹出表单(项目/选项)的自动创建,然后创建并显示它

Application.CreateForm(TForm2, Form2);
Form2.Show;
Run Code Online (Sandbox Code Playgroud)

然后通过释放它

Form2.Release;
Run Code Online (Sandbox Code Playgroud)

这样该窗体就不可能与主窗体一起恢复。