简易动画制作

简介:
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public  class ShowAnimation extends Applet implements Runnable{
    Thread duke;
    Image images[]=new Image[4], image;
    int index, delay;
    boolean flag;
    public void init(){
       index=0;
       duke=new Thread(this);
       delay=Integer.parseInt(getParameter("delay"));//从HTML代码中<param>中获取延迟时间
       for(int i=1; i<=4; ++i){
           images[i-1]=getImage(getCodeBase(), "zjy" + i + ".jpg");
       image=images[index];
       String s=i+"zjy"+1;
       System.out.println(s);
       }
       //还有注意:String s="zjy" + i + 1;//因为"zjy"+i得到的是一个字符串,然后第二个'+'号在这里变成了连接符,并不是算出i+1的整数值
       //String s=i+1+"zjy";//这时候第一个'+'就是计算两个整数值相加的,然后第二个'+'是连接符
       addMouseListener(new MouseAdapter(){
          public void mousePressed(MouseEvent e){
             if(duke==null)
                start();
             else
         stop();
          }
       });
    }
    public void start(){
        flag=true;//表示动画开始播放
        duke=new Thread(this);
        //start方法把嵌入在线程中的虚拟CPU置为可运行状态,意味着它可以被调度运行,但并不意味着线程会立即运行
        duke.start();
        showStatus("Click to stop!");
    }
    public void stop(){
        flag=false;
        duke=null;
        showStatus("Click to start!");
    }
    public void paint(Graphics g){
       g.drawImage(image, 0, 0, 200, 300, this);
    }

    public void run(){
       while(flag){//flag为false后线程将完成运行并结束,将不能再运行!所以一个线程不能多次调用start()方法!
          repaint();
          try{
           Thread.sleep(delay);
         }catch(InterruptedException e){
         
          }
          image=images[(++index)%4];
       }
    }
}









本文转自 小眼儿 博客园博客,原文链接:http://www.cnblogs.com/hujunzheng/p/3794329.html,如需转载请自行联系原作者
目录
相关文章
|
1月前
ThreeJs使用tweenjs动画库制作动画
这篇文章介绍了如何在Three.js中使用Tween.js动画库来简化动画制作流程,并演示了如何通过简单的代码实现动画效果。
71 1
ThreeJs使用tweenjs动画库制作动画
|
1月前
Threejs播放模型自带动画
这篇文章介绍了在Three.js中如何播放带有预设动作的模型动画,并特别提到了如何设置动画循环模式以实现一次性播放效果。
40 3
Threejs播放模型自带动画
|
1月前
|
移动开发 数据可视化 HTML5
flash动画制作
‌Flash动画制作教程‌‌12
48 2
|
3月前
|
移动开发 前端开发 JavaScript
HTML+CSS动画打造酷炫轮播图!(含源码)
HTML+CSS动画打造酷炫轮播图!(含源码)
|
11月前
|
前端开发
Unity-Timeline制作动画(快来制作属于你的动画吧)
Unity-Timeline制作动画(快来制作属于你的动画吧)
Unity-Timeline制作动画(快来制作属于你的动画吧)
|
JavaScript
制作移动端整页滚动动画
制作移动端整页滚动动画
111 0
|
iOS开发 MacOS Windows
Unity2D像素游戏开发——Aseprite简单人物绘画+动画制作导出精灵表示例
Unity2D像素游戏开发——Aseprite简单人物绘画+动画制作导出精灵表示例
659 0
Unity2D像素游戏开发——Aseprite简单人物绘画+动画制作导出精灵表示例