Embarcadero C ++ Builder XE,表单顺序和表单组

时间:2012-06-22 04:27:27

标签: c++ forms c++builder c++builder-xe2

我在Builder XE2中构建多个表单应用程序,我遇到表单排序问题。

假设我使用IDE GUI创建表单,如Form1和Form2(Form1已自动处理),当我运行我的应用程序时,Form2始终位于Form1之上(即使我可以访问Form1,使用其控件等)如果我以编程方式创建另一个表单,它具有与Form2相同的优先级(我可以在它们之间切换,并将它们带到前面/发送到后面),但Form1仍然保留在后面。

如何在不使用fsStayOnTop的情况下解决这个问题,以便项目中的每个表单具有相同的优先级?表格顺序在哪里定义?

2 个答案:

答案 0 :(得分:0)

了解TForm的{​​{3}}和PopupMode属性。听起来您的MainForm被设置为辅助表单的PopupParent

答案 1 :(得分:0)

检查Application.MainFormOnTaskbar的dproj文件源代码:= True;

这会影响主窗体的ZOrder(在选项中定义为主窗体的窗体...),也会导致它留在该应用程序中创建的其他窗体后面。

Embarcadero会说这是“按预期工作”,即使它与流行的主要形式/非模态子形式应用程序(如Outlook)不同。