http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com Lớp JCheckBox Java Swing Lớp JCheckBox trình triển khai checkbox, item mà lựa chọn (selected) không lựa chọn (unselected), hiển thị trạng thái tới người dùng Sau phần khai báo cho lớp javax.swing.JCheckBox: public class JCheckBox extends JToggleButton implements Accessible Lớp kế thừa phương thức từ lớp sau: javax.swing.AbstractButton javax.swing.JToggleButton javax.swing.JComponent java.awt.Container java.awt.Component java.lang.Object Lớp javax.swing.JCheckBox có trường static String BORDER_PAINTED_FLAT_CHANGED_PROPERTY Trường nhận diện thay đổi tới thuộc tính flat Các constructor lớp JCheckBox JCheckBox(): Tạo unselected checkbox ban đầu khơng có text icon JCheckBox(Action a): Tạo checkbox, với thuộc tính lấy từ Action cho JCheckBox(Icon icon): Tạo unselected checkbox với icon JCheckBox(Icon icon, boolean selected): Tạo checkbox với icon xác định ban đầu selected khơng JCheckBox(String text): Tạo unselected checkbox ban đầu với text http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com JCheckBox(String text, boolean selected): Tạo checkbox với text xác định ban đầu selected khơng JCheckBox(String text, Icon icon): Tạo unselected checkbox ban đầu với text icon cho JCheckBox(String text, Icon icon, boolean selected): Tạo checkbox với text icon, xác định ban đầu selected khơng Các phương thức lớp JCheckBox Java Swing AccessibleContext getAccessibleContext(): Lấy AccessibleContext liên kết với JCheckBox String getUIClassID(): Trả chuỗi xác định tên lớp L&F mà truyền thành phần boolean isBorderPaintedFlat(): Lấy giá trị thuộc tính borderPaintedFlat protected String paramString(): Trả biểu diễn chuỗi JCheckBox void setBorderPaintedFlat(boolean b): Thiết lập thuộc tính borderPaintedFlat, mà cung cấp hint tới L&F tới bề mặt đường viền checkbox void updateUI(): Phục hồi thuộc tính UI giá trị từ L&F Chương trình ví dụ lớp JCheckBox SwingControlDemo.java package com.vietjack.gui; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SwingControlDemo { private JFrame mainFrame; http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com private JLabel headerLabel; private JLabel statusLabel; private JPanel controlPanel; public SwingControlDemo(){ prepareGUI(); } public static void main(String[] args){ SwingControlDemo swingControlDemo = new SwingControlDemo(); swingControlDemo.showCheckBoxDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Vi du Java Swing"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); headerLabel = new JLabel("", JLabel.CENTER); statusLabel = new JLabel("",JLabel.CENTER); statusLabel.setSize(350,100); controlPanel = new JPanel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showCheckBoxDemo(){ headerLabel.setText("Control in action: CheckBox"); final JCheckBox chkApple = new JCheckBox("Apple"); final JCheckBox chkMango = new JCheckBox("Mango"); final JCheckBox chkPeer = new JCheckBox("Peer"); chkApple.setMnemonic(KeyEvent.VK_C); chkMango.setMnemonic(KeyEvent.VK_M); chkPeer.setMnemonic(KeyEvent.VK_P); chkApple.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { statusLabel.setText("Apple Checkbox: " + (e.getStateChange()==1?"checked":"unchecked")); } }); chkMango.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { statusLabel.setText("Mango Checkbox: " + (e.getStateChange()==1?"checked":"unchecked")); } }); chkPeer.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { http://vietjack.com/ Trang chia sẻ học online miễn phí Page http://vietjack.com/java_swing/index.jsp Copyright © vietjack.com statusLabel.setText("Peer Checkbox: " + (e.getStateChange()==1?"checked":"unchecked")); } }); controlPanel.add(chkApple); controlPanel.add(chkMango); controlPanel.add(chkPeer); mainFrame.setVisible(true); } } http://vietjack.com/ Trang chia sẻ học online miễn phí Page ... L&F Chương trình ví dụ lớp JCheckBox SwingControlDemo .java package com.vietjack.gui; import java. awt.*; import java. awt.event.*; import javax .swing. *; public class SwingControlDemo { private... main(String[] args){ SwingControlDemo swingControlDemo = new SwingControlDemo(); swingControlDemo.showCheckBoxDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Vi du Java Swing" ); mainFrame.setSize(400,400);... headerLabel.setText("Control in action: CheckBox"); final JCheckBox chkApple = new JCheckBox( "Apple"); final JCheckBox chkMango = new JCheckBox( "Mango"); final JCheckBox chkPeer = new JCheckBox( "Peer"); chkApple.setMnemonic(KeyEvent.VK_C);