Java swing全屏快捷方式
我想创建一个Java swing全屏快捷方式,java,swing,Java,Swing,我想创建一个JMenuItem,它的加速器为shift+f11。 按shift+f11键或单击JMenuItem键,必须全屏显示 有人有什么建议吗 JMenuItem toggle_full_screenFull = new JMenuItem("Toggle Full Screen"); toggle_full_screenFull.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F11 , InputEvent.SHIFT_DOWN_MAS
JMenuItem
,它的加速器为shift+f11
。
按shift+f11键或单击JMenuItem键,必须全屏显示
有人有什么建议吗
JMenuItem toggle_full_screenFull = new JMenuItem("Toggle Full Screen");
toggle_full_screenFull.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F11 , InputEvent.SHIFT_DOWN_MASK));
以下代码适用于我:
public class FullScreenExample extends JFrame {
public FullScreenExample() {
super("");
JMenuBar menuBar = new JMenuBar();
JMenu homeMenu = new JMenu("home");
JMenuItem fullScreen = new JMenuItem("full screen");
fullScreen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F11, KeyEvent.SHIFT_MASK));
fullScreen.addActionListener(e->setExtendedState(JFrame.MAXIMIZED_BOTH));
homeMenu.add(fullScreen);
menuBar.add(homeMenu);
setJMenuBar(menuBar);
setLocationByPlatform(true);
pack();
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> new FullScreenExample().setVisible(true));
}
}
它可以与KeyEvent.SHIFT\u DOWN\u MASK
或KeyEvent.SHIFT\u MASK
一起使用
现在,如果要使其功能类似于启用/禁用全屏模式:
fullScreen.addActionListener(e -> {
boolean isNormal = getExtendedState() == JFrame.NORMAL;
setExtendedState(isNormal ? JFrame.MAXIMIZED_BOTH : JFrame.NORMAL);
});
谢谢,这真的很有帮助。我能做点什么吗?如果我再次按下它,它会恢复正常吗?@bizzaro33我已经编辑了我的答案,但请下次在你原来的问题中提到它。