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@Configuration保證@Bean單例語(yǔ)義方法介紹
這篇文章主要介紹了SpringBoot中的@Configuration與@Bean注解,在進(jìn)行項(xiàng)目編寫前,我們還需要知道一個(gè)東西,就是SpringBoot對(duì)我們的SpringMVC還做了哪些配置,包括如何擴(kuò)展,如何定制,只有把這些都搞清楚了,我們?cè)谥笫褂貌艜?huì)更加得心應(yīng)手2023-01-01JavaSE實(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-11Windows中使用Java生成Excel文件并插入圖片的方法
這篇文章主要介紹了Windows中使用Java生成Excel文件并插入圖片的方法,其中向Excel中插入圖片文中通過使用Apache POI來實(shí)現(xiàn),需要的朋友可以參考下2016-02-02Java實(shí)戰(zhàn)之在線租房系統(tǒng)的實(shí)現(xiàn)
這篇文章主要介紹了利用Java實(shí)現(xiàn)的在線租房系統(tǒng),文中用到了SpringBoot、Redis、MySQL、Vue等技術(shù),文中示例代碼講解詳細(xì),需要的可以參考一下2022-02-02