我开发了一个 WindowsFormsApplication,它的边框样式为“FixedToolWindow”,现在的问题是,当我要最小化任何其他打开的应用程序时,我的应用程序落后于已经打开的所有应用程序。我没有得到问题的确切位置。那么有人可以帮我找出问题所在以及如何解决问题吗?
任何帮助将不胜感激。提前致谢
我开发了一个 WindowsFormsApplication,它的边框样式为“FixedToolWindow”,现在的问题是,当我要最小化任何其他打开的应用程序时,我的应用程序落后于已经打开的所有应用程序。我没有得到问题的确切位置。那么有人可以帮我找出问题所在以及如何解决问题吗?
任何帮助将不胜感激。提前致谢
该问题称为Z 顺序,它是由 Windows 维护的屏幕上出现的窗口的内部从上到下的顺序。
当您单击该其他应用程序以将其最小化时,它会成为“活动”应用程序,并且其窗口将移至前台。这会将您的应用程序(以前是前台窗口)推到后台,在另一个应用程序后面。这会导致其窗口隐藏或隐藏在其他应用程序的窗口后面。单击应用程序的窗口将再次将其带到前台,使其覆盖位于其后面的所有窗口。
但是在回答您真正的问题时,不,您不应该为BorderStyle
应用程序的主窗口指定“FixedToolWindow”。具有该边框样式的窗口不会出现在任务栏中,也不会被视为应用程序的主窗口。该样式适用于在应用程序主窗口之外显示的工具窗口,例如浮动调色板。
如果您的表单旨在成为一个工具窗口,那么您可能希望它在显示时出现在所有其他表单之上。
因此,将其TopMost属性设置为 True。
否则,我同意Cody Gray的观点,主窗体不应具有FixedToolWindow边框样式。