小编Cor*_*rey的帖子

如何在没有在main方法中调用的情况下运行paint()?

这是使用awt包的java图形的初学者问题.我在网上发现了这个代码来绘制一些简单的图形.

import java.awt.*;
public class SimpleGraphics extends Canvas{

    /**
     * @param args
     */
    public static void main(String[] args) {
        SimpleGraphics c = new SimpleGraphics();
        c.setBackground(Color.white);
        c.setSize(250, 250);

        Frame f = new Frame();
        f.add(c); 
        f.setLayout(new FlowLayout()); 
        f.setSize(350,350);
        f.setVisible(true);
    }
    public void paint(Graphics g){
        g.setColor(Color.blue);
        g.drawLine(30, 30, 80, 80);
        g.drawRect(20, 150, 100, 100);
        g.fillRect(20, 150, 100, 100);
        g.fillOval(150, 20, 100, 100); 
    }
}
Run Code Online (Sandbox Code Playgroud)

主要方法中没有任何地方是在画布上调用paint().但是我运行程序并且它可以运行,那么paint()方法是如何运行的呢?

java graphics

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

graphics ×1

java ×1