日期:2014-05-18  浏览次数:20769 次

在学习AWT图形处理的时候,对那个paint有些不理解。
package media;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;

public class ShowImage extends Frame{

String filename;
public ShowImage(String filename)
{
setSize(470,350);
this.setVisible(true);
this.filename = filename;
}

public void paint(Graphics g)
{
Image image = getToolkit().getImage(filename);
g.drawImage(image, 0,0,this);
}

public static void main(String[] args)
{
new ShowImage("E:/personal/photo/timg.jpg");
}
}


就如这段代码中,印象中应该是创建一个对象,该对象调用一个show方法,然后在界面上显示图片。
但是这里这个paint根本就没有被执行过,为什么还是会显示图像呢?

------解决方案--------------------
那个方法是在 java.awt.Window 定义的。
继承关系
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
具体怎么调用,你去看看源代码