如何在paint()方法外的applet中打印

时间:2016-02-21 11:47:26

标签: java graphics applet awt paint

我一直试图在 paint()以外的方法中使用 Graphics 类的 drawString()函数进行打印。我已经尝试过这个程序,它是早期疑问的解决方案,但是这段代码不起作用。请找我的缺点。谢谢。 以下是:

import java.awt.*;
import java.applet.*;

public class PaintIssue extends Applet {

    Graphics gg; //global Graphics object

    @Override
    public void init() {}

    @Override
    public void paint(Graphics g) {
        g.drawString("Output of paint method",20,20);
        myMethod(); //calling myMethod
    }

    public static void myMethod() {
        gg.drawString("Output of myMethod",20,40);
    }
}

1 个答案:

答案 0 :(得分:1)

AWT没有“全局图形对象”的概念。您必须传递paint方法接收的Graphics对象。

    @Override
    public void paint(Graphics g) {
        g.drawString("Output of paint method",20,20);
        myMethod(g); //calling myMethod
    }

    public static void myMethod(Graphics g) {
        g.drawString("Output of myMethod",20,40);
    }