`

Swing JButton设置背景图片

    博客分类:
  • java
 
阅读更多

import org.*;
import org.v1.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
import javax.swing.border.Border;
import org.AbstractFrame;
import org.config.FrameConfig;
import org.config.FrameManager;
import org.dao.BaseDaoFactory;
import org.dao.UserDao;
import org.event.ResizeEvent;
import org.util.FrameUtil;
import org.util.PropertiesUtil;

/**
 *
 * 主登录窗口类
 *
 * @author weijian.zhongwj
 */
public class Login extends AbstractFrame {

    public Login() {
        InitBackGround();
        this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        this.setSize(FrameManager.currentWidth, FrameManager.currentHeight);
        this.setResizable(true);
        this.setMinimumSize(new Dimension(800,600));
//        this.setLocationRelativeTo(null);
        this.setLocation(FrameManager.currentX, FrameManager.currentY);
        this.setVisible(true);
        this.setTitle("");
        addButtonEnter();
    }
    private JPanel panel;

    public void InitBackGround() {
        final ImageIcon icon = new ImageIcon(ClassLoader.getSystemResource(FrameConfig.WELCOME_IMAGE));

        panel = new JPanel() {

            protected void paintComponent(Graphics g) {
                g.drawImage(icon.getImage(), 0, 0, FrameConfig.WIDTH, FrameConfig.HEIGH, null);
                super.paintComponent(g);
            }
        };
        panel.setLayout(null);
        panel.setOpaque(false);
        panel.setPreferredSize(new Dimension(750, 550));
        JScrollPane scrollPane = new JScrollPane(panel);
        getContentPane().add(scrollPane);
    }

    private void addButtonEnter() {
        ImageIcon icon = new ImageIcon(FrameConfig.WELCOME_BUTTON);
        JButton enter = new JButton(icon);
        enter.setBounds(900, 380, 380, 270);
        enter.setOpaque(false);
        enter.setContentAreaFilled(false);
        enter.setMargin(new Insets(0, 0, 0, 0));
        enter.setFocusPainted(false);
        enter.setBorderPainted(false);
        enter.setBorder(null);
        panel.add(enter);
        enter.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            }
        });

    }

    public static void main(String[] args) {
        try {
            JFrame.setDefaultLookAndFeelDecorated(true);
            UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
            Login frame = new Login();
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
        } catch (UnsupportedLookAndFeelException ex) {
            Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}
 
0
4
分享到:
评论

相关推荐

    Swing GUI设置登录界面的背景图片并把内容放到图片上面源码

    在Java的Swing库中创建GUI界面时,我们经常需要为窗口添加个性化设计,比如设置登录界面的背景图片。这个任务可以通过使用`JLabel`组件和`ImageIcon`类来实现。下面将详细介绍如何实现这一功能。 首先,我们需要...

    设置图片适合swing组件

    在Java Swing图形用户界面开发中,经常需要为各种组件(如JLabel、JButton等)设置背景图片,并且希望这些图片能够根据组件的大小自动调整,以实现美观且响应式的设计效果。本文将详细介绍如何在Swing中实现这一功能...

    Java程序添加漂亮背景图片的方法

    Java GUI 背景图片添加方法 在 Java 中添加背景图片到 GUI 界面是一项常见的需求。通过使用 Java 的图形用户界面(GUI)组件,例如 JFrame、JPanel、JLabel 等,可以轻松地将背景图片添加到 GUI 界面中。本文将详细...

    SwingHacks学习笔记(2)-----自定义JLabel,JButton

    在Swing中,我们可以为组件设置背景图片,这通常通过覆盖`paintComponent(Graphics g)`方法并在其中绘制背景图片来实现。在该方法中,使用`Graphics`对象的`drawImage()`方法加载并绘制背景图片,确保组件的大小与...

    JButton设置透明

    例如,可以使用一个带有透明背景的图片作为按钮的图标,这样即使按钮本身是透明的,也可以通过图标来吸引用户的注意力。 2. **动态调整透明度**:根据用户交互状态(如鼠标悬停或按下)动态调整按钮的透明度,可以...

    Jframe添加背景图片

    在Java Swing中,我们经常需要为`JFrame`窗口设置背景图片来提升用户体验或实现特定的设计需求。本文将详细介绍如何在`JFrame`中添加背景图片,并通过一个示例程序来具体说明实现过程。 #### 一、基本原理 在Swing...

    Java编程实现swing圆形按钮实例代码

    我们还使用setContentAreaFilled(false)方法来禁用JButton的背景绘制,以便我们可以自己画圆形按钮的背景。 在paintComponent方法中,我们使用Graphics对象来画圆形按钮的背景和标签。如果按钮是armed状态,我们...

    java 如何在窗体背景图片上加控件

    1. **设置窗体背景图片**: - 首先,加载背景图片。你可以使用`ImageIcon`类来读取本地或网络上的图片资源。例如: ```java Image backgroundImage = new ImageIcon("path_to_your_image").getImage(); ``` -...

    JAVA GUI 开发---登录界面加载背景图片

    - 将读取到的图片设置为JPanel的背景,这需要重写`paintComponent(Graphics g)`方法,在其中调用`g.drawImage()`绘制图片。 2. **设置布局管理器** - 为了确保背景图片组件能填充整个JFrame,我们需要使用...

    Button-Swing.zip_java swing button

    以上就是关于Java Swing中的`JButton`的基本使用,包括创建按钮、添加事件监听和设置背景图标的详细步骤。通过这些基础知识,你可以创建具有交互性的用户界面,满足各种需求。在实际开发中,你还可以探索更多高级...

    java Swing 抽奖系统

    比如,一个JPanel可以用来展示导入的图片,作为抽奖背景,增加视觉效果。而另一个JPanel则可以用来显示中奖名单。 在抽奖系统中,导入图片功能是通过JFileChooser实现的,这是一个内置的对话框组件,允许用户从本地...

    基于Java swing的风景日历课程设计

    右侧的图片显示界面,可能使用了JLabel或JScrollPane来展示背景图片。JLabel可以放置图像,并且可以响应用户的操作。如果图片过大,JScrollPane会提供滚动条以便用户查看。图片的选择和设置可能通过JComboBox实现,...

    Swing实现的功能

    在Swing应用中集成Ibatis,首先要进行相关的配置,包括设置数据源、配置SQL映射文件等。接着,创建SqlSessionFactory,通过SqlSession对象执行SQL语句。Ibatis提供了动态SQL的能力,使得在处理复杂的查询和更新操作...

    java swing围棋游戏

    10. **资源管理**:游戏可能包含图标、背景图片等资源,开发者可能使用InputStream和ImageIcon来加载和显示这些资源。 11. **测试与调试**:为了确保游戏的稳定性和准确性,开发者需要进行单元测试和集成测试,使用...

    swing 植物大战僵尸

    Swing提供了一系列的组件,如JFrame、JButton、JLabel等,这些组件可以被用来创建窗口、按钮、标签等基本元素。在"植物大战僵尸"游戏中,我们可以利用这些组件来构建游戏界面,例如,用JPanel作为游戏的主要画布,用...

    javaswing游戏开发-捕鱼达人

    JButton则可以用于设置游戏的操作按钮,比如射击、暂停、重新开始等。 在描述中提到的“包含所有资源文件”,这通常包括图片、音频、字体等多媒体素材。在Java Swing中,这些资源可以通过类如javax.imageio.ImageIO...

    java swing 特效

    10. **图标和图像处理**:Swing允许使用 ImageIcon 显示图像,通过Java2D API可以对图像进行缩放、裁剪、旋转等处理,用于创建动态图标或背景图片。 总的来说,Java Swing特效的实现需要对Swing组件、事件处理、...

    Java使用swing 组件窗体美化的例子.rar

    3. JPanel:这是一个可定制的容器,可以用来组合多个组件,例如在美化窗体时,可能会使用自定义的布局管理器和背景图片。 4. JButton:用于创建按钮,这里可能是实现风格切换的关键。开发者可能为按钮绑定了事件...

    Java Swing实现一个计算器.docx

    背景图片可以使得界面更加美观,提供了一个可以添加背景图片的面板类`BackgroundPanel`。该类继承自`JPanel`,并重写了`paintComponent`方法,以便在面板上绘制背景图片。 事件监听器的使用 在该资源中,我们可以...

Global site tag (gtag.js) - Google Analytics