您的位置:首页 > 编程语言 > Java开发

Java Swing组件复选框JCheckBox用法示例

2017-11-15 10:45 1056 查看

JCheckBox是Swing中的复选框。所谓复选框就是指,可以同时存在多个这样的控件,它们可以有多个处于被选中状态。对于每一个复选框而言,它只有选中和未选中两种状态。

JCheckBox的常用方法如下图所示:

可以为它添加ActionListener对象来响应事件。

使用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核心技术 卷1 基础知识》 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.jb51.net");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
//添加label
label = new JLabel("欢迎访问脚本之家 - www.jb51.net");
label.setFont(new Font("Serif",Font.PLAIN, FONTSIZE));
add(label, BorderLayout.CENTER);
//构造一个监听器,响应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个checkBox
JPanel buttonPanel = new JPanel();
add(buttonPanel, BorderLayout.SOUTH);
//为buttonPanel添加2个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
//创建窗体并指定标题
JCheckBoxDemo frame = new JCheckBoxDemo();
//关闭窗体后退出程序
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//自动适配所有控件大小
//frame.pack();
//设置窗体位置在屏幕中央
frame.setLocationRelativeTo(null);
//显示窗体
frame.setVisible(true);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java Swing JCheckBox