具有背景的JPanel

来源:互联网 发布:mac安装文件格式 编辑:程序博客网 时间:2024/04/30 01:14
/*
* ImagePanel.java
*
* Created on 2008年7月9日, 下午3:23
*/
package shiguojunqi;
import java.awt.Graphics;
import javax.swing.*;
import java.awt.*;
import java.awt.image.ImageObserver;
/**
*
* @author  摔死的蚊子
*/
public class ImagePanel extends javax.swing.JPanel {
    
    /** Creates new form ImagePanel */
    public ImagePanel() {
        initComponents();
    }

    public void paint(Graphics g) {
        super.paint(g);
        ImageIcon imgico=new ImageIcon("res/jqbackground.jpg");
        Image img=imgico.getImage();
        ImageObserver imgobs=imgico.getImageObserver();
        g.drawImage(img,0,0,img.getWidth(imgobs),img.getHeight(imgobs),0,0,this.getWidth(),this.getHeight(),imgobs);
        
        
    }
     public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new ImagePanel().setVisible(true);
            }
        });
    }

    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        
    }
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">                          
    private void initComponents() {

        setOpaque(false);
        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(0, 300, Short.MAX_VALUE)
        );
    }// </editor-fold>                        
    
    
    // 变量声明 - 不进行修改                    
    // 变量声明结束                  
    
}