1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package com.netsdk.common;
 
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
 
import javax.swing.JPanel;
 
/*
 * 带背景的绘图面板
 */
public class PaintPanel extends JPanel {
    private static final long serialVersionUID = 1L;
    private Image image; //背景图片    
    
    public PaintPanel() {
        super();
        setOpaque(true); //非透明
        setLayout(null);
        setBackground(Color.GRAY);
        setForeground(new Color(0, 0, 0));
    }
    
    //设置图片的方法
    public void setImage(Image image) {
        this.image = image;
    }
    
    protected void paintComponent(Graphics g) {    //重写绘制组件外观
        if(image != null) {
            g.drawImage(image, 0, 0, getWidth(), getHeight(), this);//绘制图片与组件大小相同
        }
        super.paintComponent(g); // 执行超类方法
    }    
}