Java 入門圖形用戶界面設(shè)計(jì)之單選按鈕
Java程序設(shè)計(jì) 圖形用戶界面 【九】單選按鈕
單選按鈕 JRadioButton
JRadioButton類
| 方法 | 作用 |
|---|---|
| public JRadioButton(Icon icon) | 建立一個(gè)單選按鈕,并指定圖片 |
| public JRadioButton(Icon icon,boolean selected) | 建立一個(gè)單選按鈕,并指定圖片和其是否選定 |
| public JRadioButton(String text) | 建立一個(gè)單選按鈕,并指定其文字,默認(rèn)不選定 |
| public JRadioButton(String text,boolean selected) | 建立一個(gè)單選按鈕,并指定文字和是否選定 |
| public JRadioButton(String text,Icon icon,boolean selected) | 建立一個(gè)單選按鈕,并指定圖片、文字和其是否選定 |
| public void setSelected(boolean b) | 設(shè)置是否選中 |
| public boolean isSelected() | 返回是否被選中 |
| public void setText(String text) | 設(shè)置顯示文本 |
| public void setIcon(Icon defaultIcon) | 設(shè)置圖片 |
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
class MyRadio{
private JFrame frame = new JFrame("一");
private Container cont = frame.getContentPane();
private JRadioButton jrb1 = new JRadioButton("1");
private JRadioButton jrb2 = new JRadioButton("2");
private JRadioButton jrb3 = new JRadioButton("3");
private JPanel pan = new JPanel();
public MyRadio(){
pan.setBorder(BorderFactory.createTitledBorder("請(qǐng)選擇"));
pan.setLayout(new GridLayout(1,3));
pan.add(this.jrb1);
pan.add(this.jrb2);
pan.add(this.jrb3);
ButtonGroup group = new ButtonGroup();
group.add(this.jrb1);
group.add(this.jrb2);
group.add(this.jrb3);
cont.add(pan);
this.frame.setSize(330,80);
this.frame.setVisible(true);
this.frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(1);
}
});
}
}
public class Hello {
public static void main(String[] args) {
new MyRadio();
}
}

ButtonGroup group = new ButtonGroup(); group.add(this.jrb1); group.add(this.jrb2); group.add(this.jrb3);
將按鈕添加到同一個(gè)組中實(shí)現(xiàn)單選功能
JRadioButton事件處理
使用ItemListener接口進(jìn)行事件的監(jiān)聽
| 方法 | 作用 |
|---|---|
| void itemStateChanged(ItemEvent e) | 當(dāng)用戶取消或選定某個(gè)選項(xiàng)時(shí)調(diào)用 |
ItemEvent類
| 方法&常量 | 類型 | 作用 |
|---|---|---|
| public static final int SELECTED | 常量 | 選項(xiàng)被選中 |
| public static final int DESELECTED | 常量 | 選項(xiàng)未被選中 |
| public Object getItem() | 方法 | 返回受事件影響的選項(xiàng) |
| public int getStateChange() | 方法 | 返回選定狀態(tài)的類型(已選擇或已取消) |
import javax.swing.*;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
class MyRadio implements ItemListener{
private JLabel a = new JLabel("選中");
private JLabel b = new JLabel("未選中");
private JFrame frame = new JFrame("一");
private Container cont = frame.getContentPane();
private JRadioButton jrb1 = new JRadioButton("A",true);
private JRadioButton jrb2 = new JRadioButton("B",true);
private JPanel pan = new JPanel();
public MyRadio(){
ButtonGroup group = new ButtonGroup();
group.add(this.jrb1);
group.add(this.jrb2);
jrb1.addItemListener(this);
jrb2.addItemListener(this);
pan.setLayout(new GridLayout(1,4));
pan.add(this.a);
pan.add(this.jrb1);
pan.add(this.b);
pan.add(this.jrb2);
this.frame.add(pan);
this.frame.setSize(200,100);
this.frame.setVisible(true);
this.frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(1);
}
});
}
@Override
public void itemStateChanged(ItemEvent e) {
if(e.getSource()==jrb2){
a.setText("未選中");
b.setText("選中");
}else {
b.setText("未選中");
a.setText("選中");
}
}
}
public class Hello {
public static void main(String[] args) {
new MyRadio();
}
}


到此這篇關(guān)于Java 入門圖形用戶界面設(shè)計(jì)之單選按鈕的文章就介紹到這了,更多相關(guān)Java 單選按鈕內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中sleep()與wait()的區(qū)別總結(jié)
因?yàn)樽罱鼘W(xué)習(xí)時(shí)正好碰到這兩個(gè)方法,就查閱相關(guān)資料,并通過程序?qū)崿F(xiàn),進(jìn)行區(qū)別總結(jié)一下,所以下面這篇文章主要給大家總結(jié)介紹了關(guān)于Java中sleep()與wait()區(qū)別的相關(guān)資料,需要的朋友可以參考,下面來一起看看吧。2017-05-05
JavaSE實(shí)現(xiàn)電影院系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了JavaSE實(shí)現(xiàn)電影院系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08
使用Java servlet實(shí)現(xiàn)自動(dòng)登錄退出功能
這篇文章主要介紹了使用Java servlet實(shí)現(xiàn)自動(dòng)登錄退出功能,,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
Windows中使用Java生成Excel文件并插入圖片的方法
這篇文章主要介紹了Windows中使用Java生成Excel文件并插入圖片的方法,其中向Excel中插入圖片文中通過使用Apache POI來實(shí)現(xiàn),需要的朋友可以參考下2016-02-02
Java實(shí)戰(zhàn)之在線租房系統(tǒng)的實(shí)現(xiàn)
這篇文章主要介紹了利用Java實(shí)現(xiàn)的在線租房系統(tǒng),文中用到了SpringBoot、Redis、MySQL、Vue等技術(shù),文中示例代碼講解詳細(xì),需要的可以參考一下2022-02-02

