Java Swing JButton按钮的实现示例
作者:xietansheng 发布时间:2023-05-05 00:25:43
标签:Java,Swing,JButton,按钮
1. 概述
官方JavaDocsApi: javax.swing.JButton
JButton
,按钮。
JButton 常用构造方法:
// 创建不带有设置文本或图标的按钮
JButton()
// 创建一个带文本的按钮
JButton(String text)
// 创建一个带图标的按钮
JButton(Icon icon)
JButton 常用方法:
// 设置按钮的 文本、字体 和 字体颜色
void setText(String text)
void setFont(Font font)
void setForeground(Color fg)
/* 以下方法定义在 javax.swing.AbstractButton 基类中 */
// 设置按钮是否可用
void setEnabled(boolean enable)
// 设置按钮在 默认、按下、不可用 时显示的图片
void setIcon(Icon defaultIcon)
void setPressedIcon(Icon pressedIcon)
void setDisabledIcon(Icon disabledIcon)
// 是否绘制边框(设置不绘制边框,再结合上面三个设置按钮状态图片的方法,可实现自定义按钮)
void setBorderPainted(boolean b);
JButton 常用 * :
// 添加 和 移除 按钮的点击事件
void addActionListener(ActionListener listener)
void removeActionListener(ActionListener listener)
2. 代码实例: 默认按钮
package com.xiets.swing;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Main {
public static void main(String[] args) {
JFrame jf = new JFrame("测试窗口");
jf.setSize(200, 200);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
// 创建一个按钮
final JButton btn = new JButton("测试按钮");
// 添加按钮的点击事件 *
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 获取到的事件源就是按钮本身
// JButton btn = (JButton) e.getSource();
System.out.println("按钮被点击");
}
});
panel.add(btn);
jf.setContentPane(panel);
jf.setVisible(true);
}
}
结果展示:
点击按钮,查看控制台输出。
3. 代码实例: 自定义图片按钮
使用以下两张图片分别表示按钮 正常显示 和 被按下时 显示 的图片:
package com.xiets.swing;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Main {
public static void main(String[] args) throws AWTException {
JFrame jf = new JFrame("测试窗口");
jf.setSize(200, 200);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
final JButton btn = new JButton();
// 设置按钮的默认图片
btn.setIcon(new ImageIcon("button_normal.png"));
// 设置按钮被点击时的图片
btn.setPressedIcon(new ImageIcon("button_press.png"));
// 不绘制边框
btn.setBorderPainted(false);
// 添加按钮点击事件 *
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("按钮被点击了");
}
});
panel.add(btn);
jf.setContentPane(panel);
jf.setVisible(true);
}
}
结果展示:
点击按钮,查看控制台输出。
来源:https://blog.csdn.net/xietansheng/article/details/74363221
0
投稿
猜你喜欢
- SimpleDateFormat进行日期格式化1.为啥要用SimpleDateFormat众所周知,Java中的日期类是Date,然后日期默
- 在JAVA中通过synchronized语句可以实现多线程并发。使用同步代码块,JVM保证同一时间只有一个线程可以拥有某一对象的锁。锁机制实
- 简介SpringBoot提供了HATEOAS的便捷使用方式,本文详细讲解SpringBoot提供的这些基本方法。链接LinksHATEOAS
- 前言《黄金矿工》游戏是一个经典的抓金子小游戏,它可以锻炼人的反应能力。。该游戏中,可以通过“挖矿”获
- 实现HandlerInterceptor接口或者继承HandlerInterceptor的子类,比如Spring 已经提供的实现了Handl
- 如果你想知道java annotation是什么?你可以先看看:“http://www.infoq.com/articles/Annotat
- 实现原理: 长连接的维持,是要客户端程序,定时向服务端程序,发送一个
- 本文实例讲述了C#线性渐变画刷LinearGradientBrush用法。分享给大家供大家参考。具体如下:using System;usin
- 调整数组顺序使奇数位于偶数之前1. 题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的
- 由 CardLayout 类实现的布局管理器称为卡片布
- java 数据结构单链表的实现 单链表实现链表的打印及元素删除操作,链表的实现主要是next属性的定义,将一堆节点关
- 本文实例讲述了java继承中的构造方法。分享给大家供大家参考。具体如下:继承中的构造方法: 1、子类的构造过程中必须调用其基类的构造方法。2
- class文件中的常量池之前我们在讲class文件的结构时,提到了每个class文件都有一个常量池,常量池中存了些什么东西呢?字符串常量,类
- Spring Security中的内置过滤器顺序是怎么维护的?我想很多开发者都对这个问题感兴趣。本篇我和大家一起探讨下这个问题。HttpSe
- 前言在java Thread类中,我们会看到interrupt()、interrupted()及isInterrupted(),在大多数情况
- 我想每个写项目的人,都肯定会遇到控制权限这个问题.例如这个这个链接只能管理员访问,那个链接丫只能超级管理员访问等等,实现方式也有多种多样,控
- 你好,我是小黄,一名独角兽企业的Java开发工程师。感谢茫茫人海中我们能够相遇,俗话说:当你的才华和能力,不足以支撑你的梦想的时候,请静下心
- 下面是 Java 线程相关的热门面试题,你可以用它来好好准备面试。1) 什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程
- 本文实例讲述了Java泛型与数据库应用。分享给大家供大家参考,具体如下:一 点睛BaseDao定义了基本的数据库增删查改, 之后可以继承该泛
- 在系统开发中,需要对请求和响应分别拦截下来进行解密和加密处理,在springboot中提供了RequestBodyAdviceAdapter