Java JCheckBoxMenuItem
精华
小牛编辑
121浏览
2023-03-14
1 Java JCheckBoxMenuItem的介绍
JCheckBoxMenuItem类表示可以包含在菜单中的复选框。CheckBoxMenuItem可以具有与之关联的文本或图形图标,或两者都有。可以选择或取消选择MenuItem。MenuItem可以通过操作进行配置和控制。
2 Java JCheckBoxMenuItem的内部类
类 | 描述 |
---|---|
JCheckBoxMenuItem.AccessibleJCheckBoxMenuItem | 这个类实现对JCheckBoxMenuItem类的可访问性支持。 |
3 Java JCheckBoxMenuItem的构造方法
方法 | 描述 |
---|---|
JCheckBoxMenuItem() | 创建一个初始未选择的复选框菜单项,没有设置文本或图标。 |
JCheckBoxMenuItem(Action a) | 创建一个菜单项,其属性来自提供的操作。 |
JCheckBoxMenuItem(Icon icon) | 创建带有图标的最初未选中的复选框菜单项。 |
JCheckBoxMenuItem(String text) | 创建带有文本的初始未选择的复选框菜单项。 |
JCheckBoxMenuItem(String text, boolean b) | 使用指定的文本和选择状态创建一个复选框菜单项。 |
JCheckBoxMenuItem(String text, Icon icon) | 使用指定的文本和图标创建最初未选中的复选框菜单项。 |
JCheckBoxMenuItem(String text, Icon icon, boolean b) | 使用指定的文本,图标和选择状态创建一个复选框菜单项。 |
4 Java JCheckBoxMenuItem的方法
方法 | 描述 |
---|---|
AccessibleContext getAccessibleContext() | 获取与此JCheckBoxMenuItem关联的AccessibleContext。 |
Object[] getSelectedObjects() | 返回一个包含复选框菜单项标签的数组(长度为1);如果未选中该复选框,则返回null。 |
boolean getState() | 返回项目的选择状态。 |
String getUIClassID() | 返回呈现此组件的L&F类的名称。 |
protected String paramString() | 返回此JCheckBoxMenuItem的字符串表示形式。 |
void setState(boolean b) | 设置项目的选择状态。 |
5 Java JCheckBoxMenuItem的案例
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.AbstractButton;
import javax.swing.Icon;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class JavaCheckBoxMenuItem {
public static void main(final String args[]) {
JFrame frame = new JFrame("JCheckBoxMenuItem案例-小牛知识库网");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JMenuBar menuBar = new JMenuBar();
// File Menu, F - Mnemonic
JMenu fileMenu = new JMenu("File");
fileMenu.setMnemonic(KeyEvent.VK_F);
menuBar.add(fileMenu);
// File->New, N - Mnemonic
JMenuItem menuItem1 = new JMenuItem("Open", KeyEvent.VK_N);
fileMenu.add(menuItem1);
JCheckBoxMenuItem caseMenuItem = new JCheckBoxMenuItem("Option_1");
caseMenuItem.setMnemonic(KeyEvent.VK_C);
fileMenu.add(caseMenuItem);
ActionListener aListener = new ActionListener() {
public void actionPerformed(ActionEvent event) {
AbstractButton aButton = (AbstractButton) event.getSource();
boolean selected = aButton.getModel().isSelected();
String newLabel;
Icon newIcon;
if (selected) {
newLabel = "Value-1";
} else {
newLabel = "Value-2";
}
aButton.setText(newLabel);
}
};
caseMenuItem.addActionListener(aListener);
frame.setJMenuBar(menuBar);
frame.setSize(350, 250);
frame.setVisible(true);
}
}
输出结果为: