Java applet的paint方法麻烦 [英] java applet paint method trouble

查看:179
本文介绍了Java applet的paint方法麻烦的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在code我打电话重绘()方法从的init()方法,但产量不按我的期望。
我叫重绘()方法的10倍,但它名为的paint()只有一次(见O / P的屏幕截图) 。
难道我做任何错误。请帮帮我。
谢谢

In code I am calling repaint() method from init() method but Output is not as per I expect. I called repaint() method 10 times but It called paint() only once(See Screenshot of O/P). Am I making any mistake. please help me. Thanks

code

import java.awt.*;
import java.applet.Applet;
/*
    <applet code="test" height=300 width=300>
    </applet>
*/
public class test extends Applet
{
    int x,y;
    public void init() 
    {
        x=5;
        y=10;
        for(int i=1;i<10;i++)
        {
            System.out.println("From init "+i);
            x+=(i*2);                                   
            y+=(i*3);   
            repaint();      
        }                   
    }   
    public void paint(Graphics g)
    {
        System.out.println("Paint");
        g.drawLine(50,50,x,y);
    }   
}

推荐答案

请理解,你不必完全控制是否或何时漆(...)得到的调用,而重绘() 电话是只是一个建议到JVM作画。如果有太多的重绘()请求进来,它们叠加起来和你正在做的,那么他们将被合并。有关更多细节,请看看这篇文章,绘画在AWT和Swing

Please understand that you do not have complete control over if or when paint(...) get's called, and that repaint() calls are only a suggestion to the JVM to paint. If too many repaint() requests come in and they stack up as yours are doing, then they will be combined. For more details on this, please have a look at this article, Painting in AWT and Swing.

不管怎样,即使你的code的工作,它仍然不会引起你的code用户任何可见的更改,因为所有的X和Y的变化和绘画将几乎在瞬间完成。也许你真的想用一个Swing计时器?也许你想重新code这Swing和AWT不能也。

Regardless, even if your code worked, it still wouldn't cause any visible changes for the user of your code, since all the x and y changes and painting would be done almost instantaneously. Perhaps you really want to use a Swing Timer? Perhaps you want to re-code this in Swing and not AWT as well.

这篇关于Java applet的paint方法麻烦的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆