Java JFrame全屏对焦。
以下是我将JFrame设置为全屏模式的方式:Java JFrame全屏对焦。,java,swing,focus,jframe,fullscreen,Java,Swing,Focus,Jframe,Fullscreen,以下是我将JFrame设置为全屏模式的方式: //set full screen frame.dispose(); frame.setUndecorated(true); screenDevice.setFullScreenWindow(frame); frame.setVisible(true); //reset to window mode frame.dispose(); screenDevice.setFullScreenWindow(null); fram
//set full screen
frame.dispose();
frame.setUndecorated(true);
screenDevice.setFullScreenWindow(frame);
frame.setVisible(true);
//reset to window mode
frame.dispose();
screenDevice.setFullScreenWindow(null);
frame.setUndecorated(false);
frame.setVisible(true);
但是,当我显示任何对话框时,比如设置对话框,对话框和全屏画面都会丢失FOUC并消失在屏幕上。然后我需要点击任务栏图标来获得焦点
如何解决这个问题?多谢各位
编辑:
假设在这个全屏窗口的菜单栏中有一个JMenuItem,那么我通过点击菜单项使设置JDialog可见,如下所示:
settingsMenuItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
settingsDialog.showSettingsDialog();
}
});
设置对话框和全屏在全屏模式下不显示在屏幕上。在窗口模式下,它工作正常。如果要将
JFrame
设置为最大化
为什么不使用此选项:
frame.setExtendedState(Frame.MAXIMIZED_BOTH);
如果要将
JFrame
设置为最大化
为什么不使用此选项:
frame.setExtendedState(Frame.MAXIMIZED_BOTH);
我已经试过你的建议了。我想设置全屏模式,而不是最大化状态。@sanjeev:你已经有了
frame.setUndecorated(…)代码>设置为true
,因此建议。另外,考虑一下你的代码,让我们更好地理解你的代码。issue@Sanjeev当前位置另请参阅。我已经尝试了你的建议。我想设置全屏模式,而不是最大化状态。@sanjeev:你已经有了frame.setUndecorated(…)代码>设置为true
,因此建议。另外,考虑一下你的代码,让我们更好地理解你的代码。issue@Sanjeev:另见。