Java 简单小程序中的错误
应该打印以下代码 内部Java 简单小程序中的错误,java,applet,awt,paint,Java,Applet,Awt,Paint,应该打印以下代码 内部init()--内部start()--内部paint() 但它会打印最后一部分inside paint()两次!为什么呢 public class SampleApplet extends Applet { String msg; @Override public void init(){ setBackground(Color.BLACK); setForeground(Color.yellow); msg = "Inside init()--
init()
--内部start()
--内部paint()
但它会打印最后一部分inside paint()
两次!为什么呢
public class SampleApplet extends Applet {
String msg;
@Override
public void init(){
setBackground(Color.BLACK);
setForeground(Color.yellow);
msg = "Inside init()-- ";
}
@Override
public void start(){
msg += "Inside start()-- ";
}
@Override
public void paint(Graphics g){
msg += "Inside paint().";
g.drawString(msg, 10, 30);
}
}
当组件需要重新绘制组件状态的内容无效时,
update
可以调用paint
方法。当组件需要重新绘制组件状态的内容无效时,update
可以调用paint
方法。引用自:
将根据需要多次调用paint()方法。如果你
将另一个窗口放在GUI上,则会显示paint()方法
打电话。如果然后最小化该窗口并使GUI可见
再次调用paint()方法。等等
因此,如果有问题,如果paint()方法
不止一次打电话,说明你做错了。不要那样做。
paint()方法应仅从现有数据重新绘制其目标,
它应该永远不必计算出要画什么
引自:
将根据需要多次调用paint()方法。如果你
将另一个窗口放在GUI上,则会显示paint()方法
打电话。如果然后最小化该窗口并使GUI可见
再次调用paint()方法。等等
因此,如果有问题,如果paint()方法
不止一次打电话,说明你做错了。不要那样做。
paint()方法应仅从现有数据重新绘制其目标,
它应该永远不必计算出要画什么
请参阅此答案以获取解释。请参阅此答案以获取解释。因此,您的意思是
msg+=“inside paint()”中的计算导致了问题?因此,您的意思是msg+=“inside paint()”中的计算导致了问题??