JFrames 和 JDialogs 有时会在它们的父窗口后面打开但有焦点

2022-01-24 00:00:00 java swing jframe jdialog

We are developing a rather big Java enterprise application with a traditional Swing client.

Every now and then, we facing the problem that random JDialogs and JFrames open up and getting the focus, but are hidden behind their parent windows.

Unfortunately, this phenomenon is not reproducible and happens on occasion. So far it was recognized on machines having Win7 and WinXP installed. Since all developers running Windows operating systems, that does not necessarily mean that this problem is specific to Windows.

I have no idea how to fix the problem. Maybe there is a Swing expert out there who can fix this? (We are still on with Java 6).

解决方案

JFrames should not have "parents" as they are meant to be the "parent-most" window of an application. If you have a window that is meant to be a "child" and is therefore meant to be above another window, then it should be a dialog such as a JDialog or JOptionPane and should have its parent window set accordingly.

相关文章