java向窗体添加背景图片的方法

小女子java初学者,哪位高手可以给我个最简单的添加图片方法,只是实现添加背景图片功能,不胜感激,在线等!

import javax.swing.*;
import javax.imageio.*;
import java.awt.*;
import java.io.*;

public class AddImage {
public static void main(String[] args){
new AddImageFrame();
}
}
class AddImageFrame extends JFrame{
public AddImageFrame(){
super("添加背景图片");
setBounds(200,200,500,400);
setDefaultCloseOperation(this.EXIT_ON_CLOSE);
setVisible(true);
AddImagePanel aip= new AddImagePanel();
add(aip);
}
}

class AddImagePanel extends JPanel{
private Image backgroundimage=null;

public void paintComponent(Graphics g){
super.paintComponent(g);
try{
backgroundimage=ImageIO.read(new File("E:/picture/http_imgload.jpg")).getScaledInstance(getWidth(),getHeight(),Image.SCALE_FAST);
}catch(IOException e){
e.printStackTrace();
}
g.drawImage(backgroundimage,0,0,null);
image.flush();
}
}
这是设置背景图片的简单代码 你要的主要是 backgroundimage=ImageIO.read(new File("E:/picture/http_imgload.jpg")).getScaledInstance(getWidth(),getHeight(),Image.SCALE_FAST);
javax.image包里面有一个类 ImageIO有一个方法read(File string) 读取一个图片文件返回image对象,File会抛出异常,awt包里面的Image有个方法 getScaledstance(width,height,hints) 是缩放图片到多大,intnts是缩放的算法,取Image字段常量,有很多钟算法,你可以取一种,这个程序里图片的大小取的是容纳它的panel面板的大小,会随着面板的变化充满整个面板,这个变化过程要调用面板的 paintComponent()方法来监视,Graphics 中的drawImage(x,y,observer)方法来实现,observer是安全管理器,可以为null,最后绘画完后刷新就可以了,希望对你有帮助,俺也是初学者,交流为上 ,不过我个人还是认为下面的方法比较好
public void setBak() { //设置窗口背景
((JPanel) this.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon(getClass().getResource("picture/http_imgload.jpg"));
JLabel background = new JLabel(img);
this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
}构造器调用这个方法图片不会缩放,上面的例子 不用缩放的方法也可以做到,就看怎么看了
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-21
background="路径名"可以添加到body或者table标签中
第2个回答  2011-12-21
你好。
在JPanel里有个方法setOpaque(),将其设置为false就可以了。
第3个回答  2011-12-21
使用toolkit方法
Image im=Toolkit.getDefaultToolkit().getImage("img/zx.jpg");
g.drawImage(im,0,0,this);

java怎么给窗体或者面板设置背景图片?
1利用标签组件来设置\\x0d\\x0a标签本来是一种最简单的组件,为什么可以将它设置成为一个窗体的背景呢?首先还是要了解框架JFrame中的层次结构。JFrame中的层次分布及相对关系是:最底层是JRootPane,第二层是JlayerPane,最上层就是ContentPane,也正是我们常说的内容面板。所以一般我们拖放的控件就是在ContentP...

java中swing窗体美化(swing的控件美化)
JAVA,Swing中的窗口怎么添加背景图?在图片重绘时,不把图片上的组件覆盖...简单来说就是重写paint方法,然后调用画笔的drawImage这个方法。false);this.getLayeredPane().setLayout(null);this.getLayeredPane().add(backImage,newInteger(Integer.MIN_VALUE));backPanel.setLayout(newBorderLayout());这个...

java中的frame如何添加背景图片,窗口中加了面板,或者直接在面板中添加图...
public class Demo extends JFrame { JLabel jl =new JLabel(); public Demo() { jl =new JLabel(new ImageIcon("bg.jpg")); this.add(jl); this.setSize(300, 200); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); } public static void main(String[] ...

Java窗体如何设置背景图片?急求!!
可以新建个面板,在面板里放入带图片的JLabel,填满面板即可。JPanel jp = new JPanel(); \/\/新建面板 jp.setLayout(new FlowLayout()); \/\/设置面板布局 ImageIcon ii=new ImageIcon(getClass().getResource("\/Picture\/i.jpg"));JLabel uppicture=new JLabel(ii); \/\/往面板里加入JLabel this....

java 窗体中添加背景图片的方法
\/\/设置窗口在屏幕中居中显示 double width = Toolkit.getDefaultToolkit().getScreenSize().getWidth();double height = Toolkit.getDefaultToolkit().getScreenSize().getHeight();int x=(int)(width-300)\/2;int y=(int)(height-180)\/2;jf.setBounds(x,y,300,180);\/\/添加标签组件 GridLayout ...

java里面怎么给一个窗体添加一张背景图片啊,需要详细代码!谢谢
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(Integer.MIN_VALUE));getContentPane().add(p);pack(); \/\/窗口适应组件大小 setDefaultClo...

Java swing 窗体如何设置背景图片?
background.getIconHeight());backPanel = (JPanel) this.getContentPane();backPanel.setOpaque(false);this.getLayeredPane().setLayout(null);this.getLayeredPane().add(backImage, new Integer(Integer.MIN_VALUE));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界面设计怎么插入背景图片?
具体方法如下:利用标签组件来设置,具体代码如下:JPanelpnlMain=new JPanel(); \/\/创建面板pnlMain。getContentPane().add(pnlMain); \/\/将pnlMain设置为主面板。Iconi=new ImageIcon("背景.jpg"); \/*用源图片“背景.jpg”构造一个ImageIcon对象i,需要注意如果图片的路径使用的是相对路径,则图片文件...

java 设置窗口背景图片还有设置按钮的字体格式例如大小等等··_百度...
要加背景的话,可以先声明一个背景JPanel,在这个JPanel上面画上图片,可以像这样做 JPanel panel = new JPanel() { Override protected void printComponent(Graphics arg0) { \/\/ TODO Auto-generated method stub super.printComponent(arg0);arg0.drawImage(img, x, y, width, height, observer)...

相似回答