如何在已选择的菜单项旁边添加复选标记?
How can I add a check mark next to a menu item that has been selected?
我有以下代码显示一个名为 "Options" 的菜单,在它下面是菜单项 "AI Mode" 和 "Player Mode"。我只想知道如何在选择时用复选标记标记每一个。
package com.sean.breakout.menu;
import javax.swing.*;
public class MenuBar extends JMenuBar {
private static final long serialVersionUID = 1L;
public MenuBar() {
add(createOptionsMenu());
}
private JMenu createOptionsMenu() {
JMenu fileOptions = new JMenu("Options");
JMenuItem aiMode = new JMenuItem("AI Mode");
JMenuItem playerMode = new JMenuItem("Player Mode");
fileOptions.add(aiMode);
fileOptions.add(playerMode);
return fileOptions;
}
}
为此,您可以将 aiMode
和 playerMode
更改为 JCheckBoxMenuItems
。例如:
JCheckBoxMenuItem aiMode = new JCheckBoxMenuItem("AI Mode");
fileOptions.add(aiMode);
//same goes for playerMode
可以找到 JCheckBoxMenuItem
的文档 here。
编辑: 这是另一个 SO post 关于如何 select 一次只有一个项目:JCheckBoxMenuItem only one selected
我有以下代码显示一个名为 "Options" 的菜单,在它下面是菜单项 "AI Mode" 和 "Player Mode"。我只想知道如何在选择时用复选标记标记每一个。
package com.sean.breakout.menu;
import javax.swing.*;
public class MenuBar extends JMenuBar {
private static final long serialVersionUID = 1L;
public MenuBar() {
add(createOptionsMenu());
}
private JMenu createOptionsMenu() {
JMenu fileOptions = new JMenu("Options");
JMenuItem aiMode = new JMenuItem("AI Mode");
JMenuItem playerMode = new JMenuItem("Player Mode");
fileOptions.add(aiMode);
fileOptions.add(playerMode);
return fileOptions;
}
}
为此,您可以将 aiMode
和 playerMode
更改为 JCheckBoxMenuItems
。例如:
JCheckBoxMenuItem aiMode = new JCheckBoxMenuItem("AI Mode");
fileOptions.add(aiMode);
//same goes for playerMode
可以找到 JCheckBoxMenuItem
的文档 here。
编辑: 这是另一个 SO post 关于如何 select 一次只有一个项目:JCheckBoxMenuItem only one selected