⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 animationpng.java

📁 一本介绍手机游戏开发的书中的源代码
💻 JAVA
字号:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;

public class animationPNG extends MIDlet
{
   Display display;
   canvasPNG canvaspng;

    public animationPNG()
    {
      canvaspng=new canvasPNG();
      display=Display.getDisplay(this);
    }

   public void startApp()
   {
      display.setCurrent(canvaspng);
   }

   public void pauseApp(){}

   public void destroyApp(boolean unconditional){}

   class canvasPNG extends Canvas
   {
     int       gameaction;
     int       number;
     int       layer;
     Image[][] manImage;
     goAnimation goanimation;
  
     public canvasPNG()
     {  
        manImage=new Image[2][3];
        number=0;
        try{
            manImage[0][0]=Image.createImage("/Javaman-1.png");
            manImage[0][1]=Image.createImage("/Javaman-2.png");
            manImage[0][2]=Image.createImage("/Javaman-3.png");
            manImage[1][0]=Image.createImage("/JavamanNO-1.png");
            manImage[1][1]=Image.createImage("/JavamanNO-2.png");
            manImage[1][2]=Image.createImage("/JavamanNO-3.png");
        }catch(Exception ex){}
     }
  
     public void keyPressed(int keyCode)
     {  
        gameaction=getGameAction(keyCode);
        switch(gameaction)
        {
          case UP:
               break;
          case DOWN: 
               break;
          case LEFT:
               break;
          case RIGHT:
               break;
          case FIRE:
               goanimation=new goAnimation();
               goanimation.start();
               goanimation=null;
               break;
        } 
     }

     public void paint(Graphics g)
     {
        g.setColor(0x90EE90);
        g.fillRect(0, 0, getWidth(), getHeight());
        g.setColor(0x000000);
        if(layer==0)
           g.drawString("这是有透明背景的PNG图片", getWidth()/2, getHeight()/4, Graphics.HCENTER | Graphics.TOP);
        else
           g.drawString("这是无透明背景的PNG图片", getWidth()/2, getHeight()/4, Graphics.HCENTER | Graphics.TOP);
        g.drawImage(manImage[layer][number], getWidth()/2, getHeight()/2, Graphics.HCENTER | Graphics.TOP); 
     }
      
     class goAnimation extends Thread
     {
        public void run()
        {
          while(true)
             try{
                 number++;
                 if(number>2)
                 {
                   if(layer==0)
                     layer=1;
                   else
                     layer=0; 
                   number=0;
                 }
                 repaint();
                 Thread.sleep(1000);
             }catch(Exception ex){}
         }
     } 
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -