Java中JRadioButton和JCheckBox的區別是什麼?
JRadioButton 和 JCheckBox 元件都可以擴充套件 JToggleButton 類,主要區別在於 JRadioButton 是一組按鈕,其中一次只能選擇一個按鈕,而 JCheckBox 是一組複選框,其中可以同時選擇多個專案。
JRadioButton
- JRadioButton 是一個元件,表示一個專案的狀態,可以選擇或取消選擇。通常,會建立一組單選按鈕來為使用者提供選項,但是一次只能選擇一個選項。
- JRadioButton 將生成 ActionListener、ChangeListener 和 ItemListener 介面。
- 單選按鈕通常用於一組中顯示多個選項,因此,它們與 ButtonGroup 類一起使用。ButtonGroup 具有一個屬性,即在給定時間內組中只有一個按鈕被選中,並且它沒有視覺外觀。
- JRadioButton 的重要方法有 setText()、getText()、setEnabled()、setMnemonic() 等。
示例
import java.awt.*;
import javax.swing.*;
public class JRadioButtonTest extends JFrame {
public JRadioButtonTest() {
super("JRadioButton Test");
JRadioButton jrb1 = new JRadioButton("Java");
JRadioButton jrb2 = new JRadioButton("Python");
JRadioButton jrb3 = new JRadioButton("Scala");
ButtonGroup group = new ButtonGroup();
group.add(jrb1);
group.add(jrb2);
group.add(jrb3);
setLayout(new FlowLayout());
add(jrb1);
add(jrb2);
add(jrb3);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(450,375);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new JRadioButtonTest();
}
});
}
}輸出
JCheckBox
- JCheckBox 是一個元件,表示一個專案,顯示選中或未選中狀態。我們可以透過單擊元件的複選框來更改此狀態。
- 標準 JCheckBox 元件包含一個複選框和一個標籤,用於描述複選框的用途。
- JCheckBox 可以生成 ItemListener 或 ActionListener 介面。
- JCheckBox 的重要方法有 setLabel()、getLabel()、setState()、getState() 等。
示例
import java.awt.*;
import javax.swing.*;
public class JCheckBoxTest extends JFrame {
JCheckBoxTest() {
super("JCheckBox Test");
JLabel lblHobbies = new JLabel("Languages");
JCheckBox chkSports = new JCheckBox("Java");
JCheckBox chkMusic = new JCheckBox("Python ",true);
JCheckBox chkReading = new JCheckBox("Scala");
setLayout(new FlowLayout());
add(lblHobbies);
add(chkSports);
add(chkMusic);
add(chkReading);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(450,375);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new JCheckBoxTest();
}
});
}
}輸出
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP