Java中添加适应窗口大小的图片以及画出图形

      这个的实现还是比较容易的,以及在容器中写字,画图。这里重写Jpanel容器中的paintComponent()方法来实现这些功能。至于窗口,只需要在窗口之上添加上该容器将其完全覆盖即可。下面来看代码:

public class SetPicture extends JPanel{
	private String picture;//图片位置
	public SetPicture(String s1) {
		this.picture = s1;
	}

	public void paintComponent(Graphics g){
		ImageIcon image = new ImageIcon(picture);
		image.setImage(image.getImage().getScaledInstance(this.getWidth(),this.getHeight(), 
                       Image.SCALE_AREA_AVERAGING));//这里设置图片的大小和窗口的大小相等
		g.drawImage(image.getImage(),0,0,this);//在窗口上画出该图片
	}
}

注意:这里重写方法中的Graphics类不可实例化,使用时间只能在该重写方法中使用!至于写字和画图形,直接使用该类的方法,(可画的图形还是很多的,比如:线,点,圆,字)就可直接在容器的画布上画下相应的图案,当然,需要设置好开始位置和大小,这些都是些小细节。

需要更加注意的是:一定要清楚窗口和容器的概念,窗口就是一个弹窗,其他的各种容器组件都是以它为基础建立的。假如想要添加一个自画的背景,就使用上面的方法,创建一个继承并且重写了paintComponent()方法的类,将其实例化,实例化之后的容器类自带了设置好的背景,至于其他的组件,可以尽情在这容器上添加,因为是该容器覆盖了后面的窗体,因此,组件的添加也是需要在这容器之上,而不是窗体上,不然不可看见。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值