Java Swing組件復(fù)選框JCheckBox用法示例
本文實(shí)例講述了Java Swing組件復(fù)選框JCheckBox用法。分享給大家供大家參考,具體如下:
JCheckBox是Swing中的復(fù)選框。所謂復(fù)選框就是指,可以同時(shí)存在多個(gè)這樣的控件,它們可以有多個(gè)處于被選中狀態(tài)。對(duì)于每一個(gè)復(fù)選框而言,它只有選中和未選中兩種狀態(tài)。
JCheckBox的常用方法如下圖所示:

可以為它添加ActionListener對(duì)象來(lái)響應(yīng)事件。
使用demo如下:
JCheckBoxDemo.java
package awtDemo;
import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
/*
* source code from 《java核心技術(shù) 卷1 基礎(chǔ)知識(shí)》 P326
*/
@SuppressWarnings("serial")
public class JCheckBoxDemo extends JFrame{
int DEFAULT_WIDTH = 600;
int DEFAULT_HEIGHT = 400;
private JLabel label;
private JCheckBox boldCheckbox;
private JCheckBox italicCheckbox;
private static final int FONTSIZE = 12;
public JCheckBoxDemo(){
setTitle("JCheckBoxDemo - www.dhdzp.com");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
//添加label
label = new JLabel("歡迎訪問(wèn)腳本之家 - www.dhdzp.com");
label.setFont(new Font("Serif",Font.PLAIN, FONTSIZE));
add(label, BorderLayout.CENTER);
//構(gòu)造一個(gè)監(jiān)聽(tīng)器,響應(yīng)checkBox事件
ActionListener actionListener = new ActionListener(){
public void actionPerformed(ActionEvent e) {
int mode = 0;
if(boldCheckbox.isSelected()) mode += Font.BOLD;
if(italicCheckbox.isSelected()) mode += Font.ITALIC;
label.setFont(new Font("Serif", mode, FONTSIZE));
}
};
//添加buttonPanel,它包含2個(gè)checkBox
JPanel buttonPanel = new JPanel();
add(buttonPanel, BorderLayout.SOUTH);
//為buttonPanel添加2個(gè)checkBox
boldCheckbox = new JCheckBox("bold");
boldCheckbox.addActionListener(actionListener);
buttonPanel.add(boldCheckbox);
italicCheckbox = new JCheckBox("italic");
italicCheckbox.addActionListener(actionListener);
buttonPanel.add(italicCheckbox);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
//創(chuàng)建窗體并指定標(biāo)題
JCheckBoxDemo frame = new JCheckBoxDemo();
//關(guān)閉窗體后退出程序
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//自動(dòng)適配所有控件大小
//frame.pack();
//設(shè)置窗體位置在屏幕中央
frame.setLocationRelativeTo(null);
//顯示窗體
frame.setVisible(true);
}
}
運(yùn)行效果:

更多關(guān)于java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java字符與字符串操作技巧總結(jié)》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
- Java Swing組件單選框JRadioButton用法示例
- Java Swing組件下拉菜單控件JComboBox用法示例
- Java Swing組件編程之JTable表格用法實(shí)例詳解
- Java Swing組件JFileChooser用法實(shí)例分析
- Java Swing組件布局管理器之FlowLayout(流式布局)入門教程
- java Swing組件setBounds()簡(jiǎn)單用法實(shí)例分析
- java實(shí)現(xiàn)的計(jì)算器功能示例【基于swing組件】
- Java實(shí)現(xiàn)的可選擇及拖拽圖片的面板功能【基于swing組件】
- Java編程使用箱式布局管理器示例【基于swing組件】
- Java Swing組件定制CheckBox示例
- Java Swing組件定制RadioButton示例
相關(guān)文章
詳解Java 反射和反射的應(yīng)用場(chǎng)景
這篇文章主要介紹了Java 反射和反射的應(yīng)用場(chǎng)景的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)Java反射的相關(guān)知識(shí),感興趣的朋友可以了解下2020-08-08
IDEA安裝lombok插件設(shè)置Enable Annotation Processing后編譯依然報(bào)錯(cuò)解決方法
這篇文章主要介紹了IDEA安裝lombok插件設(shè)置Enable Annotation Processing后編譯依然報(bào)錯(cuò)解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
詳解spring mvc對(duì)異步請(qǐng)求的處理
spring mvc3.2及以上版本增加了對(duì)請(qǐng)求的異步處理,是在servlet3的基礎(chǔ)上進(jìn)行封裝的,有興趣的可以了解一下。2017-01-01
RestTemplate 401 獲取錯(cuò)誤信息的處理方案
這篇文章主要介紹了RestTemplate 401 獲取錯(cuò)誤信息的處理方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
解決Spring security5.5.7報(bào)錯(cuò)Encoded password does
這篇文章主要介紹了解決Spring security5.5.7出現(xiàn)Encoded password does not look like BCrypt異常問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08
IDEA 將 SpringBoot 項(xiàng)目打包成jar的方法
這篇文章主要介紹了IDEA 將 SpringBoot 項(xiàng)目打包成jar的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09

