我有一个Delphi 6应用程序与多种forms。 编译器选项中select的窗体的一个重要特征是当它被最小化时,应用程序中的所有其他窗体(窗口)被最小化,相反,当它被恢复时,所有其他可见的窗体被恢复。
我希望在运行时将主窗体的特性切换为另一种forms的应用程序,因此它就像这种意义上的主窗体(最小化/恢复领导)一样。 有一个delphi的技术,或Windows API调用,这将允许我这样做? 如果没有,是否有办法让一个二级表单模拟这种行为,不会导致更多的问题比它的价值?
Delphi为Windows Mobile编程
有EXE互联网接入? (阻止它?)
什么Windows API来build立一个调度应用程序?
如何在不禁用子控件function的情况下从客户区拖动表单?
如何设置TIdTcpClient和TIdTcpserver之间的简单连接来发送客户端到服务器的string?
事实上,你所描述的行为决定了窗户的拥有者 。 请注意,我使用Windows术语而不是VCL术语。 在Windows中, 所有者的含义与VCL的含义不同。
MSDN有这样的说窗口所有权:
重叠窗口或弹出窗口可以由另一个重叠窗口或弹出窗口拥有。 被拥有的地方在窗口上放置了几个限制。
拥有的窗口始终在z所有者的上方。
当拥有者被毁时,系统会自动销毁拥有的窗口。
当拥有者被最小化时,拥有的窗口被隐藏。
所以你想要控制的是形式的所有者,而不是主要的形式。 VCL允许你指定哪个表单是其他表单的所有者。
为了控制VCL表单的所有者,您需要使用PopupMode和PopupParent属性。
MySecondaryForm.PopupMode := pmExplicit; MySecondaryForm.PopupParent := MyOtherSecondaryForm;
目前,您的代码可能使用PopupMode的默认pmAuto 。 在这种模式下,活动表单被用作表单所有者,通常意味着主表单是所有二级表单的最终拥有者。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。