请问下面这段代码如何理解??“Graphics graphics=offScreenImage.getGraphics();”一句中,为什么是用的Image类的方法来创建对象?“graphics.fillRect(0,0,800,600);”一句中,是采用Graphics类的fillRect方法在Image对象offScreenImage上绘画矩形吗?辛苦了,越详细越好。
public void paint(Graphics g)
{
//判断Image对象offScreenImage是否为null,如是,则为它创建图像。
if(offScreenImage==null)
{
//使用Component类中的createImage方法,设置大小为800*600,与窗口大小保持一致
offScreenImage=createImage(800,600);
}
//定义Graphics类对象,并调用Image类中的getGraphics()方法用于创建一个Graphics类的实例变量。
Graphics graphics=offScreenImage.getGraphics();
//调用Graphics类的fillRect对图像进行填充,参数x,y(0,0)表示图像左上角的坐标,800*600是图像的大小
graphics.fillRect(0,0,800,600);
//调用Graphics类中drawImage方法,用于绘制背景,将图像绘制在缓冲区上。
//nowBg.getBgImage()是当前背景图,也即是需要绘制的图像;(0,0)是图像左上角的坐标。
graphics.drawImage(nowBg.getBgImage(), 0,0,this);
//将缓冲区的图片绘制到窗口中
g.drawImage(offScreenImage,0,0,this);
}