JAVA界面:设置背景并不影响其他组件

我是一个刚接触java的小白,最近又新学习了一种添加背景图片的方法,添加背景图片后不影响其他组件,现在给大家分享一下。

分层面板:JLayeredPane    如果添加到容器中的组件经常需要处理重叠问题,就可以考虑将组件添加到分层窗格。

 

public UIzhuce() {
		JPanel jp = new JPanel(null);//可以在这个面板中随意放置组件
		setLayout(new GridLayout(1, 1)); //设置只有一行一列
		layer = new JLayeredPane() {       
			public void paintComponent(Graphics g) {//重写绘制面板的方法
				super.paintComponent(g);
				ImageIcon image = new ImageIcon("img/27.jpg");//导入图片
				image.setImage(image.getImage().getScaledInstance(this.getWidth(), this.getHeight(), Image.SCALE_AREA_AVERAGING)); //设置大小
				g.drawImage(image.getImage(), 0, 0, this); //重新绘制面板
			}
		};
		this.add(layer);
		//init();   //这是我的一个放置其他组件的方法
                //layer.add(jp, JLayeredPane.DEFAULT_LAYER);
                //把面板放在分层窗格的上层,就可以在面板中随意添加组件而不受影响

 设置面板透明的方法:jp1.setOpaque(false);

设置按钮透明的方法:butt.setContentAreaFilled(false);

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值