关闭

[JAVA]①重绘JPanel面板,设置窗体背景图片

标签: javastringJPanel
80人阅读 评论(0) 收藏 举报
分类:

由于在网上查询的方法众多,而且方法有的地方复杂化,其实不用特别复杂编写代码,只要关键点的地方写对了,就可以运行。

此写法本人整理了网上思路编写,简单明了~~~!

/**
 * 自定义背景图片,重绘JPanel面板的paintComponent(Graphics g)类
 */
class BackgroundPanel extends JPanel {

	private static final long serialVersionUID = 1L;
	String name = "01.JPG"; // 将图片放在class类的同级文件夹里

	protected void paintComponent(Graphics g) { //关键代码:重写绘制组件外观
		super.paintComponent(g);
		ImageIcon image = new ImageIcon(getClass().getResource(name)); // 获取图片路径
		g.drawImage(image.getImage(), 0, 0, 350, 350, null);// 绘制图片与组件大小相同
	}
}

public class BackgroundPanelClass extends JFrame {
	private static final long serialVersionUID = 1L;
	JPanel contentPan; // 放背景面板的面板

	public BackgroundPanelClass() {
		this.setTitle("自定义背景图片");
		this.setVisible(true);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setBounds(400, 250, 350, 350);

		contentPan = new JPanel();
		contentPan.setLayout(new BorderLayout(0, 0));// 设置边界布局
		BackgroundPanel backgroundPanel = new BackgroundPanel(); // 创建背景面板
		contentPan.add(backgroundPanel);// 添加背景面板

		this.setContentPane(contentPan);

	}

	public static void main(String[] args) {
		new BackgroundPanelClass();
	}

}


效果图:

一张养眼的背景面板就被添加进去啦~如果要在背景面板上添加组件,要在BackgroundPanel类里写入构造方法进行添加。

图片存放路径:

需要放在类同级文件夹下面

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:458次
    • 积分:61
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档