[的Java Swing] JCheckBox的在Java中 – JCheckBox的在Java中
内容
创建JCheckBox的
获取事件JCheckBox的
JCheckBox的对象,允许我们选择多个属性. 例如,填写预定时观众, 宠物, 不存在这样的车. 这个人可以同时拥有 3 或者没有一个在所有.
创建JCheckBox的
我们将创造 1 与JCheckBox的JFrame的如下所示:
的JFrame 包括 2 的主要部分是在左侧包含 3 JCheckBox的, 右侧包含 3 的JLabel 分别. 首先,我们将创建最后JCheckBox的.
package nguyenvanquan7826.JCheckBox; import java.awt.BorderLayout; import java.awt.GridLayout; import javax.swing.JCheckBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class MyJCheckBox extends JFrame { private JCheckBox checkMoney, checkHouse, checkCar; private JLabel lbMoney, lbHouse, lbCar; public MyJCheckBox() { // add main panel add(createMainPanel()); // set display setTitle("JCheckBox"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(200, 150); setLocationRelativeTo(null); setVisible(true); } private JPanel createMainPanel() { // create JPanel container three checkBox JPanel panelCheckBox = new JPanel(new GridLayout(4, 0, 5, 5)); panelCheckBox.add(checkMoney = createCheckBox("Money")); panelCheckBox.add(checkCar = createCheckBox("Car")); panelCheckBox.add(checkHouse = createCheckBox("House")); // create JPanel Container three JLabel JPanel panelShow = new JPanel(new GridLayout(4, 0, 5, 5)); panelShow.add(lbMoney = createLabel("Money")); panelShow.add(lbCar = createLabel("Car")); panelShow.add(lbHouse = createLabel("House")); // add panelCheckBox and panelShow to main panel JPanel panel = new JPanel(new BorderLayout()); panel.add(panelCheckBox, BorderLayout.WEST); panel.add(panelShow, BorderLayout.CENTER); return panel; } // create a JCheckBox private JCheckBox createCheckBox(String name) { JCheckBox checkBox = new JCheckBox(name); return checkBox; } // create a JLabel private JLabel createLabel(String lb) { JLabel label = new JLabel(lb); label.setEnabled(false); return label; } public static void main(String[] args) { new MyJCheckBox(); } }
在他的部分接口不再说话, 在代码和注释也相对. 我只是谈论创建JCheckBox的.
在方法createCheckBox(字符串名称) 我已经使用了构造 JCheckBox的复选框=新JCheckBox的(名字); 以下是如何创建 1 JCheckBox的有相应的文字. 我们也有其他的初始化方法为:
– JCheckBox的(): 创建 1 JCheckBox的没有文本, 无图标, 不检查.
– JCheckBox的(行动): 创建一个动作JCheckBox的
– JCheckBox的(图标图标): 与图标创建JCheckBox的
– JCheckBox的(图标图标, 布尔选择): 创建图标和设置JCheckBox的选择或不.
– JCheckBox的(文本字符串, 布尔选择): 创建和设置JCheckBox的选定文本或不.
– JCheckBox的(文本字符串, 图标图标): 与文本创建JCheckBox的, 使用图标
– JCheckBox的(文本字符串, 图标图标, 布尔选择): 与文本创建JCheckBox的, 使用图标, 设定被选择或不.
获取事件JCheckBox的
当你需要检查的复选框每个复选框赶上事件addItemListener. 方法createCheckBox() 修改为:
private JCheckBox createCheckBox(String name) { JCheckBox checkBox = new JCheckBox(name); checkBox.addItemListener(this); return checkBox; }
当此, 我们的类实现所需要的接口 的ItemListener 和压倒一切的方法 公共无效itemStateChanged(ItemEvent和). 这种方法是我们选中复选框时做这项工作的方法. 在这个例子中,我们将检查每一次检查的事件在一定的复选框. 然后,它会检查是否复选框被选中或取消设置显示或不显示相应的JLabel.
要检查是否复选框被选中与否,我们使用的方法 isSelected(). 因此,我们所有的计划将被写入如下:
package nguyenvanquan7826.JCheckBox; import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.JCheckBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class MyJCheckBox extends JFrame implements ItemListener { private JCheckBox checkMoney, checkHouse, checkCar; private JLabel lbMoney, lbHouse, lbCar; public MyJCheckBox() { // add main panel add(createMainPanel()); // set display setTitle("JCheckBox"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(200, 150); setLocationRelativeTo(null); setVisible(true); } private JPanel createMainPanel() { // create JPanel container three checkBox JPanel panelCheckBox = new JPanel(new GridLayout(4, 0, 5, 5)); panelCheckBox.add(checkMoney = createCheckBox("Money")); panelCheckBox.add(checkCar = createCheckBox("Car")); panelCheckBox.add(checkHouse = createCheckBox("House")); // create JPanel Container three JLabel JPanel panelShow = new JPanel(new GridLayout(4, 0, 5, 5)); panelShow.add(lbMoney = createLabel("Money")); panelShow.add(lbCar = createLabel("Car")); panelShow.add(lbHouse = createLabel("House")); // add panelCheckBox and panelShow to main panel JPanel panel = new JPanel(new BorderLayout()); panel.add(panelCheckBox, BorderLayout.WEST); panel.add(panelShow, BorderLayout.CENTER); return panel; } // create a JCheckBox private JCheckBox createCheckBox(String name) { JCheckBox checkBox = new JCheckBox(name); checkBox.addItemListener(this); return checkBox; } // create a JLabel private JLabel createLabel(String lb) { JLabel label = new JLabel(lb); label.setEnabled(false); return label; } public static void main(String[] args) { new MyJCheckBox(); } @Override public void itemStateChanged(ItemEvent e) { if (e.getSource() == checkMoney) { lbMoney.setEnabled(checkMoney.isSelected()); return; } if (e.getSource() == checkCar) { lbCar.setEnabled(checkCar.isSelected()); return; } if (e.getSource() == checkHouse) { lbHouse.setEnabled(checkHouse.isSelected()); return; } } }
阅读更多: 类JCheckBox的, 使用JCheckBox的
0 在回应 [的Java Swing] JCheckBox的在Java中 – JCheckBox的在Java中