一、运行后,窗体上显示两个自制按钮
二、鼠标放上按钮后效果:
三、制作步骤:
(1)预先做好的按钮的图片(见附件按钮图标)
(2)调用JButton的父类AbstractButton类的三个方法:
(3)AbstractButton的子类:
JButton、JCheckBox、JRadioButton、 JMenuItem
所以以上四个组件均可用同样的方法进行美化。
四、具体的代码实现:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
public class FancyButton extends JButton {
private ButtonAction ba;
/**
* 构造器
* @param icon:按钮默认的图标
* @param pressed:鼠标点击按钮显示的图标
* @param rollover:鼠标放在按钮上显示的图标
*/
public FancyButton(Icon icon, Icon pressed, Icon rollover) {
setFocusPainted(false);
//设置翻转效果
setRolloverEnabled(true);
//鼠标放在按钮上替换显示的图标
setRolloverIcon(rollover);
//鼠标点击按钮替换显示的图标
setPressedIcon(pressed);
//将按钮设置为无边框
setBorderPainted(false);
//设置按钮为透明,无填充效果,只显示替换的图标
setContentAreaFilled(false);
ba=new ButtonAction(icon);
this.setAction(ba);
}
public static void main(String[] args) {
FancyButton b1 = new FancyButton(
new ImageIcon("images/2.png"),
new ImageIcon("images/8.png"),
new ImageIcon("images/9.png"));
FancyButton b2 = new FancyButton(
new ImageIcon("images/14.png"),
new ImageIcon("images/15.png"),
new ImageIcon("images/16.png"));
JFrame f = new JFrame( );
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = f.getContentPane( );
c.setLayout(new FlowLayout( ));
c.add(b1);
c.add(b2);
//调整此窗口的大小,以适合其子组件的首选大小和布局。
f.pack( );
f.setVisible(true);
}
public class ButtonAction extends AbstractAction{
public ButtonAction(Icon icon){
putValue(SHORT_DESCRIPTION, "鼠标放上按钮,图标改变了哦!");
putValue(SMALL_ICON,icon);
}
@Override
public void actionPerformed(ActionEvent e) {}
}
}
- 大小: 7.2 KB
- 大小: 83 KB
分享到:
相关推荐
Java Swing JButton 按钮的实现示例 Java Swing JButton 按钮是 Java 中最常用的 GUI 组件之一,用于在用户界面中提供交互方式。JButton 按钮可以根据需要自定义外观和行为,下面将对 JButton 按钮的实现示例进行...
在 Java Swing 中,`JButton` 是一个非常重要的组件,用于创建按钮。本文将详细介绍 `JButton` 的基本用法、如何设置按钮的图标、文本位置、快捷键以及如何处理按钮点击事件。 #### 一、引入必要的包 在开始编写...
有时候,为了提高用户体验和交互效率,我们希望为`JButton`添加快捷键或者访问键(accelerator key)。在本篇文章中,我们将详细探讨如何在Java中为`JButton`设置快捷键。 首先,我们需要了解快捷键的基本概念。...
JButton 组件可以用来创建普通的按钮、带图片的按钮、带文字的按钮等多种样式的按钮。 JButton 的构造方法 JButton 组件提供了多种构造方法,用于创建不同的按钮样式: 1. `public JButton()`:创建一个普通的...
java swing JButton 圆角按钮 带变色(有注释,简单易懂适用于初学者 程序可直接运行)
而`JButton`则是一个常用的按钮控件,通常用于触发某些动作或事件。将`JButton`添加到`JTable`中可以为用户提供更丰富的交互体验,例如编辑、删除或自定义操作。本文将详细讲解如何在`JTable`中添加`JButton`控件,...
在各种编程语言和框架中,都有专门的方法和类来创建和管理按钮,例如在Java Swing中有JButton,Python的Tkinter库中有Button,而在iOS的Swift中,我们可以使用UIButton。 然后,我们来了解“视图”。视图是用户界面...
JButton 美化,主要实现圆角矩形,根据鼠标动作变化,主要代码: Graphics2D g2d = (Graphics2D) g; g2d.setColor(Color.GREEN); g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints....
使用 AbstractTableModel 构建Table 在表格中添加JButton按钮,之前在网上找了2天没有找到好用的程序,最终终于找到一个好用的例子。 不要使,我退你们分。。 sing the Swing JTable class can quickly become a ...
【扫雷小游戏源码解析与JButton应用】 扫雷,这个经典的Windows系统自带的小游戏,以其简单的规则和挑战性深受玩家喜爱。在这个源码中,我们主要关注的是它如何使用Java编程语言,特别是JButton组件来实现游戏逻辑...
在给定的代码段中,我们看到作者创建了一个自定义的`JButton`类`JButton_Bg`,并实现了按钮的不同状态下的背景效果,包括正常状态、获得焦点状态、被按下状态和被释放状态。 为了实现这些效果,代码中使用了`...
java 中重写jbutton,改变按钮特点,写出自己想要的按钮
在Java Swing库中,`JButton`是用于创建按钮组件的基本类。`JButton`具有默认的外观,包括边框,这通常是用户界面设计的一部分。然而,在某些情况下,我们可能希望自定义`JButton`的外观,比如去除边框,以达到特定...
在Java Swing库中,`JButton`是一种常用的GUI组件,用于创建按钮。有时为了美观或者设计的需求,我们可能需要让按钮变得透明。然而,并不是所有的透明化方法都能达到理想的效果。本文将详细介绍如何正确地设置`...
在Java Swing库中,我们可以使用`JButton`组件来创建用户界面中的按钮。当你需要在窗口或对话框中设置一个默认按钮,这个按钮通常会在用户按下回车键时触发其动作事件。设置默认按钮是提高应用程序用户体验的重要...
这样,每个单元格实际上就是一个包含多个按钮的小容器。 1. **创建自定义`TableCellRenderer`**: 首先,你需要继承`DefaultTableCellRenderer`类,并重写`getTableCellRendererComponent`方法。在这个方法中,你...
自定义JButton的一个常见需求是实现按钮的悬停效果,即当鼠标移动到按钮上时,按钮的外观发生变化。这可以通过设置按钮的rollover图标和添加鼠标监听器来实现。例如,我们可以用`setRolloverIcon()`设置鼠标悬停时...