我在Builder XE2中构建多个表单应用程序,我遇到表单排序问题。
假设我使用IDE GUI创建表单,如Form1和Form2(Form1已自动处理),当我运行我的应用程序时,Form2始终位于Form1之上(即使我可以访问Form1,使用其控件等)如果我以编程方式创建另一个表单,它具有与Form2相同的优先级(我可以在它们之间切换,并将它们带到前面/发送到后面),但Form1仍然保留在后面。
如何在不使用fsStayOnTop的情况下解决这个问题,以便项目中的每个表单具有相同的优先级?表格顺序在哪里定义?
答案 0 :(得分:0)
了解TForm
的{{3}}和PopupMode
属性。听起来您的MainForm被设置为辅助表单的PopupParent
。
答案 1 :(得分:0)
检查Application.MainFormOnTaskbar的dproj文件源代码:= True;
这会影响主窗体的ZOrder(在选项中定义为主窗体的窗体...),也会导致它留在该应用程序中创建的其他窗体后面。
Embarcadero会说这是“按预期工作”,即使它与流行的主要形式/非模态子形式应用程序(如Outlook)不同。