Java中插入背景图片的方法

来源:互联网 发布:怎么开通淘宝客账号 编辑:程序博客网 时间:2024/05/15 00:45
虽然网上也能查到许多种办法,反正这是我鼓捣了一段时间才搞定的方法,代码如下:
第一种办法:

我们把图片放置在第二层:

JlayerPane

容器上,然后让最上层的:

ContentPane

透明,这样就实现了背景的设置。

(当然把图片放置最低层,让上面两层透明也是可以的)

ImageIcon bg = newImageIcon("E:\\this is java\\PTst\\000.jpg"); //把背景图片显示在一个标签里
 JLabel label= new JLabel(bg); //把标签的大小位置设置为图片刚好填充整个面
label.setBounds(0,0,bg.getIconWidth(),bg.getIconHeight());//添加图片到frame的第二层  
frame.getLayeredPane().add(label,newInteger(Integer.MIN_VALUE));//获取frame的最上层面板为了设置其背景颜色(JPanel有设置透明的方法) 
JPaneljp=(JPanel)frame.getContentPane(); jp.setOpaque(false);//设置透明   //测试用的JPanel   
JPanel panel=new JPanel();   
panel.setOpaque(false);//也要让他透明  
panel.setLayout(null);//为了使用按钮的定位  
frame.add(panel); 
第二种办法:
我们直接在最上层容器内重写paintComponent(Graphicsg)方法在容器中画一张图片。(这种方法很直观,原理很简单)
只需要在构造JPanel时重写paintComponent(Graphicsg)就ok了。 
class PanelTest extendsJPanel{ 
 ImageIconbackground = new ImageIcon("background.jpg");//加载图片 Imageim=Toolkit.getDefaultToolkit().getImage("background.jpg"); int h,w; 
 public voidpaintComponent(Graphics g) {   g.drawImage(im, 0,0, null); 
 }}
0 0
原创粉丝点击