继承JPanel类重写
package panel;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.LayoutManager;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
//设置主页背景图片的JPnel类
public class PanelBg extends JPanel {
ImageIcon icon;
Image img;
String bg="";
public PanelBg(boolean isDoubleBuffered) {
super(isDoubleBuffered);
// TODO Auto-generated constructor stub
}
public PanelBg(LayoutManager layout, boolean isDoubleBuffered) {
super(layout, isDoubleBuffered);
// TODO Auto-generated constructor stub
}
public PanelBg(LayoutManager layout) {
super(layout);
// TODO Auto-generated constructor stub
}
public PanelBg() {
super();
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
if(this.bg.equals("")){
bg="/img/bg2.jpg";
}
icon=new ImageIcon(getClass().getResource(bg));
img=icon.getImage();
//下面这行是为了背景图片可以跟随窗口自行调整大小,可以自己设置成固定大小
g.drawImage(img, 0, 0,this.getWidth(), this.getHeight(), this);
}
}
new一个自己写的类
new PanelBg(new FlowLayout(FlowLayout.LEFT));