程序太长又不在一个文件里,所以只能摘其主要部分。这种方法如按纽控制可以正常画线。
for (int i=1;i<91;i++){
  try{
      Thread.currentThread().sleep(200);
      }
  catch(InterruptedException e){}
  pointscale((float)512.0,(float)384.0,(float)0.99);
                         //本函数改变一个存有一系列点的坐标的数组。
  myCanvas1.repaint();//myCanvas类的Paint()中按数组点坐标重新划线。
  }

解决方案 »

  1.   

    看一下你修改了数组后myCanvas1的Paint()中的数据是否改变,myCanvas1.repaint()时paint方法是否被调用;
      

  2.   

    myCanvas1的参数中有此数组,且是传地址的,能保证数组中的数据已经改变,并且动画的最后图形有跳变,只是没有渐变的过程。
    myCanvas1.repaint()时paint方法是否被调用,怎么查看,可能是这个原因。
    我理解是调用repaint()时,自动调用paint()方法,是不是不对?
      

  3.   

    在repaint里打印repaint+一个计数器,在paint里打印一个paint+计数器;看看他们之间的顺序就可知道。