首页 > 编程语言 >《Java核心技术I》Swing选择组件中的复选框

《Java核心技术I》Swing选择组件中的复选框

时间:2024-12-20 16:57:03浏览次数:7  
标签:JCheckBox Java bold frame new 复选框 Swing import

选择组件

除了输入,也需要选择组件,接下来介绍,复选框、单选按钮、选项列表以及滑块。

复选框

需要紧邻标签来说明其用途。 bold = new JCheckBox("Bold"); 调用setSelected方法来选中或取消复选框 bold.setSelected(true); isSelected方法将获取每个复选框当前状态。 用户点击复选框将触发一个动作事件,两个复选框使用同一动作监听器。 监听器查询bold和italic复选框状态,并且把面板中的字体设置为常规、加粗、倾斜或者粗斜体。

复选框例子:

package swing;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionListener;

import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class CheckBoxTest {

    public static void main(String[] args) {
        JFrame frame = new JFrame("复选框");
        var label = new JLabel("敏捷的棕色狐狸跳过懒惰的狗.");
        label.setFont(new Font("Serif",Font.BOLD,24));
        frame.add(label,BorderLayout.CENTER);
        var bold = new JCheckBox("粗体");
        var italic = new JCheckBox("斜体");
        ActionListener listener = e -> {
            int mode = 0;
            if(bold.isSelected()) mode+=Font.BOLD;
            if(italic.isSelected()) mode+=Font.ITALIC;
            label.setFont(new Font("Serif", mode, 24));
        };
        
        JPanel buttonPanel = new JPanel();
        bold.addActionListener(listener);
        bold.setSelected(true);
        buttonPanel.add(bold);
        
        italic.addActionListener(listener);
        buttonPanel.add(italic);
        frame.add(buttonPanel,BorderLayout.SOUTH);
        
        
        frame.setSize(400, 400);
        //初始打开为屏幕中央
        Toolkit toolkit = Toolkit.getDefaultToolkit();
        Dimension screenSize = toolkit.getScreenSize();
        int screenWidth = (int) screenSize.getWidth();
        int screenHeight = (int) screenSize.getHeight();
        //计算窗口位置
        int x = (screenWidth - frame.getWidth())/2;
        int y = (screenHeight - frame.getHeight())/2;
        frame.setLocation(x, y);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }

}

javax.swing.JCheckBox 1.2

  • JCheckBox(String label)
  • JCheckBox(String label,Icon icon),构造一个复选框,初始没有被选中
  • JCheckBox(String label,boolean state),用给定标签和初始状态构造一个复选框。
  • boolean isSelected()
  • void setSelected(boolean state),获取或设置复选框的选择状态。

标签:JCheckBox,Java,bold,frame,new,复选框,Swing,import
From: https://blog.csdn.net/qq_36324341/article/details/144615067

相关文章

  • java服务压测遇到问题
    一、线程池数量  实例服务器4C3G  场景:服务A——》服务B; 实例服务器:8台,接口耗时400ms 现像服务A接口中有使用多线程,设置线程池核心线程数:8 最大线程数量200 ,队列:10000,当进行压测时吞吐量一直超不过每秒请求量qps:500,且开始接口耗时也随着请求量上来而增长。......
  • 基于Java水果商城系统详细设计和实现
    **主要内容:**SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。......
  • 阿里P8面试官让我吃透这份10W字java面试题终于可以拿java高级岗
    其实,伴随着互联网行业寒冬的到来,各大企业都不敢大肆招聘,都是选择收缩发展,加上程序员内部越来越卷,要求越来越高了,要想在IT行业继续发展进阶拿高薪的话,提升自己是必不可少的。现在这个时刻更是到了年底,找工作只会更难,所以,咱们程序员要做的就是进行一个面试+技术的一个储备,准备明......
  • Java项目实战之基于 Spring Boot+MyBatisPlus+MySQL+JSP的毕业设计综合信息管理系统
    1.引言1.1项目背景毕业设计是高等教育中的重要环节,为了提高毕业设计管理的效率和质量,实现信息化管理,特开发本毕业设计综合信息管理系统。该系统涵盖了毕业设计过程中的各个环节,包括管理员信息管理、院系专业管理、学生信息管理、教师信息管理、论文题目审核、选题信息管理、历......
  • Ubuntu系统部署程序:修改IP、部署docker、nginx、Redis、onlyoffice、java
    记录一次Ubuntu系统的程序部署修改IP#修改IPvim/etc/network/interfacesautoens33ifaceens33inetstaticaddress192.?.?.?netmask255.255.255.0gateway192.?.?.?#修改DNSvim/etc/systemd/resolved.conf或vi/etc/resolv.confnameserver192.?.?......
  • 基于 SSM 与 JAVA 打造网络直播带货查询系统:JSP 指引的设计与实现方向
    第一章绪论1.1背景及意义系统管理也都将通过计算机进行整体智能化操作,对于网络直播带货网站所牵扯的管理及数据保存都是非常多的,例如管理员;主页、个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理,用户;主页、个人中心、我的收藏管理、订单管理,前台首......
  • SSM 框架下基于 JAVA 的网络直播带货查询系统设计与 JSP 创新实现
    第一章绪论1.1背景及意义系统管理也都将通过计算机进行整体智能化操作,对于网络直播带货网站所牵扯的管理及数据保存都是非常多的,例如管理员;主页、个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理,用户;主页、个人中心、我的收藏管理、订单管理,前台首......
  • java常见高级面试题总结(面试必备)
    面向对象编程(OOP)Java是一个支持并发、基于类和面向对象的计算机编程语言。下面列出了面向对象软件开发的优点:代码开发模块化,更易维护和修改。代码复用。增强代码的可靠性和灵活性。增加代码的可理解性。面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象。下面的章节我们......
  • Java项目实战之基于springboot+vue+mysql+jpa+redis的企业网站搭建设计文档设计与实现
    一、引言1.1项目背景随着互联网的飞速发展,企业网站已成为企业展示形象、推广产品和服务、与客户沟通的重要窗口。为了提升企业的竞争力,需要构建一个功能完善、用户体验良好的企业网站。1.2项目目标本项目旨在打造一个专业、高效、易用的企业网站,满足企业在品牌展示、产品推......
  • Java线程 interrupt 方法使用异常
    背景需要在异步任务中中断任务的执行,故选择通过调用interrupt方法对线程设置中断信号。在比较耗时的业务代码增加判断Thread.currentThread().isInterrupted()抛出异常停止任务执行,并回退任务。问题中断信号发出后,任务线程一直未检测到中断信号状态。以下为测试结论。第......