JPanel添加背景图片

来源:百度知道 编辑:UC知道 时间:2024/06/04 02:24:36
我添加了图片再在这个Panel上加Jpanel图片就会被覆盖。我是重写的Panel的paint方法。请问怎么添加了背景图片后再在上面添加其他Panel而不覆盖掉图片呢?

重写要添加的JPanel的paint(Graphics)方法,里面不要调用super.paint(g);,用以下方法来画内容
Image buffer=createImage(getWidth(),getHeight());
Graphics gg=buffer.getGraphics();
//
//在这进行绘制.....用gg不要用g
//
g.drawImage(buffer,0,0,null,this); //最后绘制到JPanel上

ImageIcon img=new ImageIcon("img//固定资产管理系统.jpg");
JLabel hy=new JLabel(img);
this.getLayeredPane().add(hy,new Integer(Integer.MIN_VALUE));
hy.setBounds(0,0,img.getIconWidth(),img.getIconHeight());
((JPanel)getContentPane()).setOpaque(false);

jpanel初始化的背景有的时候会遮盖住组件所以我直接初始化背景加入图片
这个是放入图片
ImageIcon img1=new ImageIcon("img//welcome.png");
ima1.setIcon(img1);
ima1.setBounds(new Rectangle(212, 245, 500, 150));//这是位置 大小 前两个为坐标相对你的界面 最后两个为大小
this.getContentPane().add(ima1);