createImage和getImage区别

本文详细介绍Java中使用AWT库的两种关键绘图方法:createImage和getImage。createImage用于在内存中创建Image对象,实现快速重绘,适用于双缓冲绘图;getImage则从指定文件获取像素数据创建图像。文章深入讲解了这两种方法的使用场景和具体实现步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.public Image createImage(int width,int height)

(在awt.Componet包中)

它是在内存中创建的Image对象,所以重绘速度快很多

JDK文档中描述:创建一幅用于双缓冲,可以在屏幕外绘制的图像,如果组件不可显示, 则返回null

所以在绘图的时候需要先调用setVisible方法来显示组件

必须在GUI程序第一次调用paint方法之后才能使用createImage

可以在程序上使用语句:

Image oimg = null;

Graphics og = null;

public void paint(Graphics og){

if(oimg != null){

og.drawImage(oimg, 0, 0, this);

}

}

createImage就像一个画布一样,把要画的图像加载到它的Image对象上

所以代码写成:

Dimension d = this.getSize();

oimg = this.createImage(d.width, d.height);

og = oimg.getGraphics();

getSize方法返回当前对象的,以Dimention对象的形式返回组件的大小

上面说createImage对象是创建一幅用于双缓冲,可以在屏幕外绘制的图像

所以把组件的大小传递给createImage方法,由这个方法来创建

另外getGraphics相当于一个画笔,把画笔传递给了Graphics对象,就可以画图了

2.getImage abstract Image getImage(String filename)

用于返回一幅图像,该图像从指定文件中获取像素数据,

Image img = getToolkit().getImage(“C://a.jpg”);

getToolkit方法返回此组件的工具包

此处getImage位于ToolKit类中,而ToolKit类是抽象类,不可以直接创建,所 以从Component中寻找到getToolKit方法,它返回ToolKit类型,再调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值