你换成paintComponent(java.awt.Graphics) 试一下

解决方案 »

  1.   

    不行啊,还是不正常,现在这个paint方法有的时候还能正常运行,不过大部分时候都是不正常运行。
      

  2.   

    我已经发现问题了,我是在applet上加了一个Panel,然后又在panel加了一个JPanel,可是在Panel的paint方法还没执行的时候,可能JPanel的paint方法就轮到执行了,结果导致不能正常运行,请问,我如何能判断Panel的paint方法是否已经执行完毕,谢谢!
      

  3.   

    Panel上可以加JPanel吗,没有试过哦,把代码贴出来看看
      

  4.   

    299行的代码,实在的没法帖,我把大概的情况写一下,可能有笔误的地方,程序运行事,就是C类离的paint方法执行不正常。
    public class A extends Applet
    {
      public void init()
      {
         add(new B());
      }
      class B extends Panel
      {
        public B()
        {
          add(new C());
        }
        public void paint(Graphics g)
        {
          ...
         }
        class C extends JPanel
        {
           public void paint(Graphics g)
           {
              g.drawImage(....);
           }
        }
      }
    }
      

  5.   

    经过我多次测试,如果把B类里的paint函数去掉,C类里的paint函数就一切正常,这就说明,在B里的paint还没有执行完,C里的paint就要执行,结果冲突了,可是我现在找不到办法能让B里的paint执行完了在去执行C里的paint。请高手请教。