Java 入门图形用户界面设计之复选框
作者:小旺不正经 发布时间:2022-06-19 15:22:53
标签:Java,复选框,图形用户界面
Java程序设计 图形用户界面 【十】复选框
复选框JCheckBox
JCheckBox类
方法 | 作用 |
---|---|
public JCheckBox(Icon icon) | 创建一个带图标的对象,但不选定 |
public JCheckBox(Icon icon,boolean selected) | 创建一个带图标的对象,并指定其是否选定 |
public JCheckBox(String text) | 创建一个带文本的对象,但不选定 |
public JCheckBox(String text,boolean selected) | 创建一个带文本的对象,并指定其是否选定 |
public JCheckBox(String text,Icon icon,boolean selected) | 创建一个带文本和图标的对象,并指定其是否被选定 |
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
class MyCheckBox{
private JFrame frame = new JFrame("一");
private Container cont =frame.getContentPane();
private JCheckBox jcb1 = new JCheckBox("A");
private JCheckBox jcb2 = new JCheckBox("B");
private JCheckBox jcb3 = new JCheckBox("C");
private JPanel pan = new JPanel();
public MyCheckBox(){
pan.setBorder(BorderFactory.createTitledBorder("请选择"));
pan.setLayout(new GridLayout(1,3));
pan.add(this.jcb1);
pan.add(this.jcb2);
pan.add(this.jcb3);
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 MyCheckBox();
}
}
与单选按钮不同的是,此时选择的地方变成了“□”型,与各个系统中常见的复选框形式是一样的
JCheckBox事件处理
JCheckBox和JRadioButton的事件处理监听接口是一样的,都是使用ItemListener接口
使用ItemListener接口进行事件的监听
方法 | 作用 |
---|---|
void itemStateChanged(ItemEvent e) | 当用户取消或选定某个选项时调用 |
ItemEvent类
方法&常量 | 类型 | 作用 |
---|---|---|
public static final int SELECTED | 常量 | 选项被选中 |
public static final int DESELECTED | 常量 | 选项未被选中 |
public Object getItem() | 方法 | 返回受事件影响的选项 |
public int getStateChange() | 方法 | 返回选定状态的类型(已选择或已取消) |
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 MyCheckBox {
private JFrame frame = new JFrame("一");
private Container cont = frame.getContentPane();
private JCheckBox jcb1 = new JCheckBox("A");
private JPanel pan = new JPanel();
private JLabel a = new JLabel("未选中");
public MyCheckBox(){
pan.setLayout(new GridLayout(1,2));
pan.add(a);
pan.add(this.jcb1);
jcb1.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
JCheckBox jcb = (JCheckBox) e.getItem();
if(jcb.isSelected()){
a.setText("选中");
}else {
a.setText("未选中");
}
}
});
cont.add(pan);
this.frame.setSize(300,100);
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 MyCheckBox();
}
}
选中选项改变 文字
来源:https://blog.csdn.net/weixin_42403632/article/details/122927155


猜你喜欢
- 1. 源起:仍然是模块化编程所引发的需求。产品经理难伺候,女产品经理更甚之~:p纯属戏谑,技术方案与产品经理无关,芋头莫怪!VCU10项目重
- 关于Windows10 Java环境变量配置问题的解决办法由于最近有一些时间,所以想要把之前学过一段时间的Java重新捡起来看看,之前的学习
- 当我们在做前后端分离的开发时,在使用fetch交换数据的时候,提示Access-Control-Allow-Origin跨域问题,解决方案跟
- 先给大家展示下效果图,如果大家感觉不错,请参考使用方法,效果图如下所示:使用方法:录音工具类:AudioRecoderUtils.java,
- 在这篇文章中,我精选了几个比较适合 Java 编码的 IDEA 主题供小伙伴们选择。另外,我自己用的是 One Dark theme 这款。
- 一、基本概念(重要)Integer 是 int 的包装类,int 则是 java 的一种基本数据类型;Integer 变量必须实例化后才能使
- Java内存区域与内存溢出异常概述对于 C 和 C++程序开发的开发人员来说,在内存管理领域,程序员对内存拥有绝对的使用权,但是也要主要到正
- 1、多态性多态性是面向对象的最后一个特征,它本身主要分为两个方面:方法的多态性:重载与覆写1 重载:同一个方法名称,根据参数类型以及个数完成
- 不管eclipse有没有被被时代抛弃,反正是被我抛弃了,因为IDEA是真的好用现在公司的项目基本都是基于maven的多module项目,co
- 线性布局(LinearLayout)名字含义android:id设置一个id方便使用android:layout_width宽度androi
- 由于项目上的需要侧滑条目展示收藏按钮,记得之前代码家有写过一个厉害的开源控件 AndroidSwipeLayout 本来准备直接拿来使用,但
- Android Studio软件下载地址如下:下载:http://www.android-studio.org/index.php/down
- Android 吸入动画效果详解 . 这里,我要介绍的是如何在Android上面实现一个类似的效果。先看看我实现的效果图。 &n
- 本文实例为大家分享了C#添加Windows服务的具体方法,供大家参考,具体内容如下源码下载地址:http://xiazai.jb51.net
- 修改readme.txt文件如下:Git is a distributed version control system.Git is fr
- 前言提前说明下:(该方法只适用于监控自己拥有的微信或者QQ ,无法监控或者盗取其他人的聊天记录。本文只写了如何获取聊天记录,服务器落地程序并
- 位操作符是对数据按二进制位进行运算的操作符。位操作是其他很多语言都支持的操作,如C、C++和Java等,C#也不例外支持位操作。注意位操作支
- 前言上一篇文章已经介绍了fluent-mybatis项目的构建,文章地址:Java Fluent Mybatis实战之构建项目与代码生成篇上
- 一、什么是特性特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。您可以通
- 1.配置代理系统管理---configure Global Security(全局安全设置)---Tcp port for inbound