java swing 中如何添加图片作为背景

如题所述

简单来说就是重写paint方法,然后调用画笔的drawImage这个方法。
如:
对一个JPanel加入背景图片“bg01.png”,那么就重写paint这个方法如下
在类里
/**
* 背景图片
*/
Image backgroundImage = null;

//这就是重写paint方法
public void paint(Graphics g)
{
loadRecources();

if(backgroundImage != null)
{
g.drawImage(backgroundImage, 0, 0, this);
}
}

public void loadRecources()
{
//载入背景图片
if(backgroundImage == null)
{
try
{
backgroundImage = ImageIO.read(new File("resources/Images/bg01.png"));
} catch (IOException e)
{
System.out.println("缺少背景图片");
JOptionPane.showMessageDialog(this, "找不到背景图片!", "文件缺失", JOptionPane.ERROR_MESSAGE);
}
}
}

这里只是写的一个示例代码,lz看看,然后分析下写一个类,然后如此尝试下,应该很快就能成功。来自:求助得到的回答
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-29
应该是重写paintComponent。
不过swingx库提供了现成的功能,不必自己从头再来实现一次。

Java Swing 怎么自定义界面背景图片
在java swing中需要为容器添加自定义图片或者背景图片。提供两种简单的解决方案,一种利用JPanel,另一种利用JLabel,代码如下:1、JPanel(源代码)package oo; import java.awt.Graphics; import java.awt.Image; import java.io.File; import javax.swing.ImageIcon; import javax.swing.JFram...

Java swing 窗体如何设置背景图片?
backPanel.setLayout(new BorderLayout());这个是我程序里面复制出来的,效果就下面图一样。

java中swing界面上怎么给jpanel上添加背景图片
package test;import java.awt.Graphics;import java.awt.Image;import java.net.URL;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JPanel;\/\/为窗口添加背景图片public class JFrameBackground {private JFrame frame = new JFrame("带背景图片的JFrame");private JPanel...

java中swing窗体美化(swing的控件美化)
java怎么改变窗体边框的颜色?1、java.awt包中的TextField类(单行文本框)、TextArea类(多行文本框),以及javax.swing包中的JTextField类(单行文本框)、JTextArea类(多行文本框),它们都有setBackground方法来设置此文本组件的背景色。2、DefaultTableCellRenderer,只需要覆盖它的getTableCellRendererCo...

java swing整个JFrame设置背景图片
首先,f.setUndecorated(true);可以把标题栏去掉,这样就只剩下中间的内容了。然后背景图你可以新建一个类,继承JPanel,然后重写方法 public void paint(Graphics g){} 方法体内用g.drawImage(xxx)把你的图片绘出来。接着在你的f里用f.add(new 继承JPanel的自定义类),因为JFrame默认是BorderLayout...

javaswing整个JFrame设置背景图片
\/\/示例代码,下面的注释有说明背景图片 import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class Fre { ...

java里面怎么给一个窗体添加一张背景图片啊,需要详细代码!谢谢
import javax.swing.*;public class IS extends JFrame { IS(){ JPanel p=new JPanel();JLabel l=new JLabel();Icon icon=new ImageIcon("D:\\\\a.jpg"); \/\/在此直接创建对象 l.setIcon(icon);l.setBounds(0, 0, icon.getIconWidth(),icon.getIconHeight());p.add(l,new Integer...

JAVA里面 怎么用AWT、swing等简单的 建立背景图片?
public void setBack() { ((JPanel) this.getContentPane()).setOpaque(false);\/\/ Winter.jpg这个图片的位置要跟当前这个类是同一个包下 URL url = "当前这个类的名字".class.getResource("Winter.jpg");ImageIcon img = new ImageIcon(url);JLabel background = new JLabel(img);this....

求,在JAVA界面里添加一张背景图片
参照这个代码就可以实现容器加背景,主要是重写paintComponent方法package test;import java.awt.Graphics;import java.awt.Image;import javax.swing.ImageIcon;import javax.swing.JPanel;public class RePanel extends JPanel{ protected void paintComponent(Graphics g){\/\/重写paintComponent方法以实现jPanel...

Java中JInternalFrame内部窗体如何设置它的背景图片
Java 中可以用 JLayeredPane,你把一个 JLabel 设置图标后放置在 z 坐标的最底层就可以了。样例教程:http:\/\/docs.oracle.com\/javase\/tutorial\/uiswing\/components\/layeredpane.html

相似回答