Java Swing中怎样简单方便的设置背景图片

   这里想到了两种方式:一种是使用JPanel,另一种使用JLabel来实现。

       下面是测试用源码:

1.JPanel(源代码)

  1. package oo;  


  2. import java.awt.Graphics;  

  3. import java.awt.Image;  

  4. import java.io.File;  


  5. import javax.swing.ImageIcon;  

  6. import javax.swing.JFrame;  

  7. import javax.swing.JPanel;  


  8. publicclass Drawing {  


  9.    JFrame jframe = new JFrame();  

  10. publicstatic JPanel GImage = null;  


  11. public Drawing() {  

  12.        initFrame();  

  13.    }  


  14. // 初始化窗口

  15. publicvoid initFrame() {  

  16. // 利用JPanel添加背景图片


  17.        GImage = new JPanel() {  


  18. protectedvoid paintComponent(Graphics g) {  

  19.                ImageIcon icon = new ImageIcon("image\\benbenla.jpg");  

  20.                Image img = icon.getImage();  

  21.                g.drawImage(img, 0, 0, icon.getIconWidth(),  

  22.                        icon.getIconHeight(), icon.getImageObserver());  

  23.                jframe.setSize(icon.getIconWidth(), icon.getIconHeight());  


  24.            }  


  25.        };  

  26.        jframe.setTitle("测试背景图片");  

  27.        jframe.add(GImage);  

  28.        jframe.pack();  

  29.        jframe.setVisible(true);  

  30.        jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  


  31.    }  


  32. publicstaticvoid main(String[] args) {  

  33. new Drawing();  


  34.    }  


  35. }  


2.JLabel源代码

  1. package swing.draw;  


  2. import java.awt.Image;  


  3. import javax.swing.ImageIcon;  

  4. import javax.swing.JFrame;  

  5. import javax.swing.JLabel;  


  6. /** 利用JLabel来构建图片 */


  7. publicclass Drawing2 {  

  8.    JLabel jlpic = new JLabel();  

  9.    JFrame jframe = new JFrame();  


  10. public Drawing2() {  


  11.        init1Frame();  

  12.    }  


  13. publicvoid init1Frame() {  

  14.        ImageIcon icon = new ImageIcon("image\\benbenla.jpg");  

  15.        icon.setImage(icon.getImage().getScaledInstance(icon.getIconWidth(),  

  16.                icon.getIconHeight(), Image.SCALE_DEFAULT));  

  17.        System.out.println(icon.getIconHeight() + "" + icon.getIconWidth());  

  18.        jlpic.setBounds(0, 0, 1366, 768);  

  19.        jlpic.setHorizontalAlignment(0);  

  20.        jlpic.setIcon(icon);  

  21.        jframe.setSize(1366, 768);  

  22.        jframe.add(jlpic);  

  23.        jframe.pack();  

  24.        jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  

  25.        jframe.setVisible(true);  


  26.    }  


  27. publicstaticvoid main(String args[]) {  


  28. new Drawing2();  

  29.    }  

  30. }  




你可能感兴趣的:(java,JFrame,JPanel,swing,背景图片)