java swing 为JPanel动态设置背景图片 http://www.it610.com/article/413408.htm
1 重写paintComponent方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
public class Test{ private JFrame frame; private URL url; class MyJPanel extends JPanel{ @Override protected void paintComponent(Graphics g){ super.paintComponent(g); icon = new ImageIcon(url);//[color=red]图片路径不能固定否则无法动态修改图片[/color] if(icon!= null){ g.drawImage(icon.getImage(), 0, 0, null); } } } } |
2 设置好Image变量供g.drawImage(icon.getImage(), 0, 0, null);使用
1 2 3 |
url = getClass().getClassLoader().getResource("xxx.jpg");//xxx.jpg在class目录下 ImageIcon icon = new ImageIcon(url); Image img = icon.getImage() |
3 调用JPanel的repaint();方法。该方法调用后会调用paintComponent方法。