Java Swing JCheckBox复选框的实现方法
作者:xietansheng 发布时间:2023-03-18 17:14:10
标签:Swing,JCheckBox,复选框
1. 概述
官方JavaDocsApi:javax.swing.JCheckBox
JCheckBox,复选框。
JCheckBox 常用构造方法:
// 无文本,默认未选中
JCheckBox()
// 有文本,默认未选中
JCheckBox(String text)
// 有文本,并指定是否选中
JCheckBox(String text, boolean selected)
JCheckBox 常用方法:
// 设置复选框的 文本、字体 和 字体颜色
void setText(String text)
void setFont(Font font)
void setForeground(Color fg)
/* 以下方法定义在 javax.swing.AbstractButton 基类中 */
// 设置复选框是否选中状态
void setSelected(boolean b)
// 判断复选框是否选中
boolean isSelected()
// 设置复选框是否可用
void setEnabled(boolean enable)
// 设置图片和文本的间距
void setIconTextGap(int iconTextGap)
JCheckBox 常用 * :
// 添加状态改变 *
void addChangeListener(ChangeListener l)
2. 代码实例
package com.xiets.swing;
import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Main {
public static void main(String[] args) {
JFrame jf = new JFrame("测试窗口");
jf.setSize(250, 250);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
// 创建复选框
JCheckBox checkBox01 = new JCheckBox("菠萝");
JCheckBox checkBox02 = new JCheckBox("香蕉");
JCheckBox checkBox03 = new JCheckBox("雪梨");
JCheckBox checkBox04 = new JCheckBox("荔枝");
JCheckBox checkBox05 = new JCheckBox("橘子");
JCheckBox checkBox06 = new JCheckBox("苹果");
// 添加第一个复选框的状态被改变的监听(其他复选框如果需要监听状态改变,则可按此方法添加监听)
checkBox01.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
// 获取事件源(即复选框本身)
JCheckBox checkBox = (JCheckBox) e.getSource();
System.out.println(checkBox.getText() + " 是否选中: " + checkBox.isSelected());
}
});
// 设置默认第一个复选框选中
checkBox01.setSelected(true);
panel.add(checkBox01);
panel.add(checkBox02);
panel.add(checkBox03);
panel.add(checkBox04);
panel.add(checkBox05);
panel.add(checkBox06);
jf.setContentPane(panel);
jf.setVisible(true);
}
}
结果展示:
来源:https://blog.csdn.net/xietansheng/article/details/74363460


猜你喜欢
- 环境配置Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclis
- @Async注解如何实现方法异步处理大批量数据的时候,效率很慢。所以考虑一下使用多线程。刚开始自己手写的一套,用了线程池启动固定的线程数进行
- 题外话:学习.NET已经有一年了,从C#->ASP.NET->WPF。主要以看电子书为主,比较少写代码。现在回头学习以前接触过的
- 1.System类System系统类,主要用于获取系统的属性数据和其他操作,因其构造方法是私有的并且类中的成员方法都是静态的,所以在使用的时
- TM的作用我们根据源码解读画出了下图,该图示展现了TM在整个Seata AT模式的分布式事务中所起的作用:从上图中可以看出,TM主要有两个作
- 本节作为主要讲解Spring Data的环境搭建JPA Spring Data :致力于减少数据访问层(DAO)的开发量。开发者唯一要做的就
- Spring spring-context-indexer依赖<dependencies> <d
- 先看下效果图:这个需要用到1个开源的 库,这个后面也会说下的。工程目录:1. MainActivity.javapublic class M
- Android日期选择控件效果如下:调用的代码:@OnClick(R.id.btn0) public void btn0() { final
- 最近在学习ssh框架时,照着网上做了一个商城系统,之前在一些需要用户存在的操作中,都是在每一个action中写重复的代码,这样做现在想起来并
- 背景在开发中,如果用try catch的方式,每个方法都需要单独实现,为了方便分类异常,返回给前端,采用了@ControllerAdvice
- 1. 实验目的: 使用线程池的时候,有时候需要考虑服务器的最大线程数目和程序最快
- C#事件实例详解C#和JAVA有许多相似的地方,设计思想差不多,语法及其相像,均传承自面向对象设计思想,灵感来自C++并取其精华去其“糟粕(
- 目录1. 新建产品,在官网新建产品2. 获取app id,点击产品设置,拿到App ID3. 集成SDK,在Android项目的 app/b
- 今天是解决报错的一天,首先在操作Springboot中的时候,有些朋友的yml显示的不是绿叶的图标,或者是配置了之后不生效的问题。第一个解决
- Spring AOP proxyTargetClass的行为要点列表形式proxyTargetClasstrue目标对象实现了接口 – 使用
- 1、概述首先和大家一起回顾一下Java 消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:1.消息服务:一个中间件
- 前言经过前面对 Kotlin 的介绍,相信大家已经能对 Kotlin 有了一个基本的认识。 从这节开始,我就为大家讲解 Kotlin的方法以
- 在android studio中存储数据有三个方法,分别是:(1)简单存储——SharedPreferences(2)文件存储:内部存储——
- 一:简述我们很多时候为了实现数据在线程级别下的隔离,会使用到ThreadLocal,那么TheadLocal是如何实现数据隔离的呢?今天就和