简单类方法如下:
package src;
import java.awt.*;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class MyPanel extends JPanel{
private Image image = null;
public MyPanel(Image image) {
this.image = image;
}
//固定背景图片,允许这个JPanel可以在图片上添加其他组件
protected void paintComponent(Graphics g) {
g.drawImage(image, 0, 0, this.getWidth(), this.getHeight(), this);
}
}
测试JFrame
package src;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Test extends JFrame{
JPanel jpanel;
JLabel jlabel;
JButton jbutton;
Image image=new ImageIcon("image/a.jpg").getImage();
ImageIcon labIma=new ImageIcon("image/a.jpg");
Test(){
this.setIconImage(image);
this.setTitle("hello");
init();
this.add(jpanel);
}
public void init(){//本方法里面有三种显示图片的方法,两个实现了在图片上添加按钮的功能
/*第一种方法 通过JLabel简单的设置图片
jpanel=new JPanel();
jlabel=new JLabel();
jlabel.setIcon(labIma);
jpanel.add(jlabel);
*/
/*第二种方法 这是实现在JLabel添加图片同时在上面添加按钮功能,注意它里面的jpanel不用显示的添加到JFrame中,因此上面构造函数中的this.add(jpanel)要注释掉
jpanel = (JPanel) this.getContentPane(); //从JFrame 里面创建一个JPanel
jpanel.setOpaque(false); //JPanel 透明模式
jlabel = new JLabel(labIma); //创建个带背景图片的JLabel
this.getLayeredPane().add(jlabel, new Integer(Integer.MIN_VALUE));
jlabel.setBounds(0, 0, labIma.getIconWidth(), labIma.getIconHeight());
jpanel.setLayout(new FlowLayout());
JButton jb = new JButton("我是按钮");
jpanel.add(jb);
*/
/*第三种方法 通过重写JPanel中的paintComponent方法设置背景图片,然后在jpanel上添加组件
//通过背景图片设置图片 注意MyPanel是自己定义的一个类
jpanel=new MyPanel(image);
jbutton=new JButton();
jbutton.setText("haha");
jpanel.add(jbutton);
*/
}
public static void main(String args[])
{
Test t=new Test();
t.setSize(400,400);
t.setVisible(true);
}
}
分享到:
相关推荐
Swing提供了丰富的功能,包括允许开发者为这些组件设置自定义的背景图片,以提升应用的视觉效果。这篇博文主要讨论了如何在JPanel和Container上设置背景图片,下面将详细解释这个过程。 首先,我们需要了解JPanel和...
在Java的Swing库中创建GUI界面时,我们经常需要为窗口添加个性化设计,比如设置登录界面的背景图片。这个任务可以通过使用`JLabel`组件和`ImageIcon`类来实现。下面将详细介绍如何实现这一功能。 首先,我们需要...
在Java Swing图形用户界面开发中,经常需要为各种组件(如JLabel、JButton等)设置背景图片,并且希望这些图片能够根据组件的大小自动调整,以实现美观且响应式的设计效果。本文将详细介绍如何在Swing中实现这一功能...
当我们需要在Swing应用中展示图片时,可以利用特定的方法来读取并显示图像。本篇文章将详细讲解如何在Java Swing中读取和显示图片,以及与之相关的知识点。 首先,我们需要了解Java中的图像处理类。`java.awt.Image...
在Java Swing中,创建美观的用户界面通常需要对窗体进行一定程度的定制,其中一种常见的需求就是添加背景图片。本文将详细介绍两种在Java Swing中实现窗体添加背景图片的方法,并探讨Swing重绘过程中的`repaint()`和...
Java GUI 背景图片添加方法 在 Java 中添加背景图片到 GUI 界面是一项常见的需求。通过使用 Java 的图形用户界面(GUI)组件,例如 JFrame、JPanel、JLabel 等,可以轻松地将背景图片添加到 GUI 界面中。本文将详细...
在Java Swing中,我们经常需要为`JFrame`窗口设置背景图片来提升用户体验或实现特定的设计需求。本文将详细介绍如何在`JFrame`中添加背景图片,并通过一个示例程序来具体说明实现过程。 #### 一、基本原理 在Swing...
JPanel 渐进色背景,和图片背景(可叠加)的实现代码,以及使用样例。 jar文件中包含源代码,本身可执行以便于看效果。
HoneyViewer图片查看器是一个基于java Swing实现的图片查看器,主要实现了图片展示功能。 本实验手册根据需求完成图片读取、切换等功能,平台的全称为:基于java Swing实现的HoneyViewer图片查看器(后简称为: Keep-...
这个项目使用Swing构建了一个图片浏览器,它允许用户查看、管理和浏览图片。Swing提供了丰富的组件集合,如JFrame、JPanel、JLabel等,这些组件可以用来创建窗口、面板和显示图像。 首先,让我们深入了解一下Swing...
Swing做的简单图片查看器,JFileChoose的用法。
java swing编写的一个图片浏览器。可全屏播放
在Java的Swing库中,页面属性的设置顺序是一个关键概念,这关乎到组件的显示效果和程序的正确运行。Swing是Java提供的一种轻量级GUI(图形用户界面)框架,它允许开发者创建丰富的桌面应用程序。理解Swing组件属性的...
(java swing毕业设计)酒店管理系统(ppt+ER图+流程图+需求背景数据库+架构说明有lun文视频源码齐全)(java swing毕业设计)酒店管理系统(ppt+ER图+流程图+需求背景数据库+架构说明有lun文视频源码齐全)(java swing毕业...
Java Swing 是Java GUI...通过分析这个Java Swing图片浏览器,我们可以了解到Swing的基本使用、GUI设计、事件处理以及图片处理的相关技巧。对于想要深入学习Java桌面应用开发的人来说,这是一个实用且有趣的实践项目。
注册,登录,改密码,存款,取款,转账,交易记录,手机充值,换背景图片,退出登录,带SQL文件 1.基于JavaSwing开发的ATM取款机系统,适合课程设计和毕业...3.功能介绍:支持设置背景图片,经过多次优化,100%可运行
要给JFrame添加背景图片,我们通常会利用JPanel,因为JFrame本身默认是透明的,无法直接设置背景图片。以下是一个基本的步骤: 1. **加载图片**: 使用Java的`javax.imageio.ImageIO`类来读取图片文件,例如JPG、...
在Java编程中,设置背景图片是一项常见的任务,特别是在开发图形用户界面(GUI)应用程序时。以下是如何在Java中实现这一功能的详细步骤和知识点: 首先,我们需要了解Java的Swing库,它提供了丰富的组件和工具来...
这个"基于Swing的图片浏览器源运行例子"是《疯狂Java实战演义》一书中第三章的一个实践项目,旨在帮助读者深入理解如何利用Swing来创建一个功能完备的图片查看器应用程序。以下是对这个案例的详细解析: 首先,...
Swing JTable组件设置单元格合并,内置Test测试类,核心API GridBagTable tasktable = new GridBagTable(model); tasktable.mergeCells(startRow, endRow, 0, 0);