GUI编程16:图片按钮、单选框、多选框

news/2024/9/20 0:14:25 标签: java, 开发语言, GUI编程

视频链接:18、图片按钮、单选框、多选框_哔哩哔哩_bilibiliicon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1DJ411B75F?p=18&vd_source=b5775c3a4ea16a5306db9c7c1c1486b5

1.图片按钮代码示例

java">package com.yundait.lesson05;

import javax.swing.*;
import java.awt.*;
import java.net.URL;

public class JButtonDemo01 extends JFrame {

    public JButtonDemo01(){
        
        Container container = this.getContentPane();

        //将一个图片变为一个图标
        URL resource = JButtonDemo01.class.getResource("VCG211239251300.jpg");
        ImageIcon icon = new ImageIcon(resource);

        //将这个图标放在按钮上
        JButton jButton = new JButton();
        jButton.setIcon(icon);
        jButton.setSize(50,50);
        jButton.setToolTipText("这是一个图片按钮");

        //在容器上添加按钮
        container.add(jButton);

        this.setVisible(true);
        this.setSize(600,700);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }
    
    public static void main(String[] args) {
        new JButtonDemo01();
    }
}

运行结果:

2.单选框代码示例:

java">package com.yundait.lesson05;

import javax.swing.*;
import java.awt.*;
import java.net.URL;

public class JButtonDemo02 extends JFrame {

    public JButtonDemo02(){
        Container container = this.getContentPane();
        //单选框
        JRadioButton jRadioButton1 = new JRadioButton("JRadioButton1");
        JRadioButton jRadioButton2 = new JRadioButton("JRadioButton2");
        JRadioButton jRadioButton3 = new JRadioButton("JRadioButton3");

        //创建一个按钮组,把按钮放在组中,组中的按钮只能选择一个
        ButtonGroup buttonGroup = new ButtonGroup();
        buttonGroup.add(jRadioButton1);
        buttonGroup.add(jRadioButton2);
        buttonGroup.add(jRadioButton3);

        //在容器上添加按钮
        container.add(jRadioButton1,BorderLayout.NORTH);
        container.add(jRadioButton2,BorderLayout.CENTER);
        container.add(jRadioButton3,BorderLayout.SOUTH);

        this.setVisible(true);
        this.setSize(600,700);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new JButtonDemo02();
    }
}

运行结果:

2.多选框代码示例

java">package com.yundait.lesson05;

import javax.swing.*;
import java.awt.*;

public class JButtonDemo03 extends JFrame {

    public JButtonDemo03(){
        Container container = this.getContentPane();

        //创建多选框
        JCheckBox jCheckBox1 = new JCheckBox("jCheckBox1");
        JCheckBox jCheckBox2 = new JCheckBox("jCheckBox2");

        //将多选框添加到容器中
        container.add(jCheckBox1,BorderLayout.NORTH);
        container.add(jCheckBox2,BorderLayout.CENTER);
        
        this.setVisible(true);
        this.setSize(600,700);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new JButtonDemo03();
    }
}

运行结果:


http://www.niftyadmin.cn/n/5666361.html

相关文章

运维最难的是哪些部分呢

在讨论运维工作中,监控通常被视为一个核心且至关重要的环节,但它是否可以被简单地定义为“最难”的工作,则取决于多种因素,包括但不限于技术复杂度、资源投入、团队结构、业务特性以及故障应对的及时性等。以下是对运维中监控工作…

Vue.js与Flask/Django后端配合详细讲解

✨博客主页: https://blog.csdn.net/m0_63815035?typeblog 💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 📢博客专栏: https://blog.csdn.net/m0_63815035/cat…

openEuler 22.03 LTS 安装JDK 8(亲测很简单的安装办法)

Oracle JDK从2019年4月16日起开始商业用途统统收费,也就是说只能使用2019年1月15发布的JDK 8u202免费版本,没有订阅(交钱)是没安全更新可用的,所以只能使用替代品OpenJDK、AdoptOpenJDK等发布版,那为什么不…

蓝桥杯4. Fizz Buzz 经典问题

题目描述 给定一个整数 NN,从 1 到 NN 按照下面的规则返回每个数: 如果这个数被 3 整除,返回 Fizz。如果这个数被 5 整除,返回 Buzz如果这个数能同时被 3 和 5 整除,返回 FizzBuzz。如果这个数既不能被 3 也不能被 5…

我向大模型求了一份Stable Diffusion的应用场景

写在前面: 茫茫人海中,有你有我,相遇相识相互琢磨,人潮人海中是你是我,装作正派面带笑容,不必过分多说 自己清楚,你我到底想要做些什么,不必在乎许多 更不必难过,终究有一…

Python编码系列—Python桥接模式:连接抽象与实现的桥梁

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

消息队列-Kafka(概念篇)

1 为什么需要消息队列? 消息队列是一种基于消息的异步通信机制,用于在分布式系统中不同组件或服务之间传递数据和通知。实际上可以将消息队列看作为存放消息的容器,参与消息传递的分别称为生产者(发送消息)和消费者&am…

Linux环境变量进程地址空间

目录 一、初步认识环境变量 1.1常见的环境变量 1.2环境变量的基本概念 二、命令行参数 2.1通过命令行参数获取环境变量 2.2本地变量和内建命令 2.3环境变量的获取 三、进程地址空间 3.1进程(虚拟)地址空间的引入 3.2进程地址空间的布局和理解 …