使用J2ME技術(shù)完成容易的動畫
發(fā)表時間:2024-02-02 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]在J2ME程序開發(fā)過程中經(jīng)常需要實現(xiàn)游戲動畫,例如簡單的文字閃動,復(fù)雜的游戲界面變化等等,下面簡單的介紹一下動畫的原理,并附實現(xiàn)代碼。 動畫原理就是利用人的視覺暫留的生理特性,實現(xiàn)出來的一種假象。下面的代碼就是不斷的變化繪制的內(nèi)容,實現(xiàn)文字的閃動! 〕绦虻倪壿嫞好扛0.2秒變換一次繪制的內(nèi)容...
在J2ME程序開發(fā)過程中經(jīng)常需要實現(xiàn)游戲動畫,例如簡單的文字閃動,復(fù)雜的游戲界面變化等等,下面簡單的介紹一下動畫的原理,并附實現(xiàn)代碼。
動畫原理就是利用人的視覺暫留的生理特性,實現(xiàn)出來的一種假象。下面的代碼就是不斷的變化繪制的內(nèi)容,實現(xiàn)文字的閃動。
程序的邏輯:每隔0.2秒變換一次繪制的內(nèi)容,如果屏幕上沒有繪制文字,則繪制,否則繪制文字。
實現(xiàn)代碼如下:
package welcomecanvas;
import javax.microedition.lcdui.*;
publicclass DongHuaCanvas extends Canvas implements Runnable {
//標(biāo)志是否繪制字符串
boolean b = true;
public DongHuaCanvas() {
//啟動線程
Thread t = new Thread(this);
t.start();
}
protected void paint(Graphics g) {
//清屏
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(0,0,0);
//根據(jù)標(biāo)志變量繪制字符串
if(b == true){
g.drawString("閃爍的文字",50,50,Graphics.LEFT Graphics.TOP);
}
}
/**
* 線程方法,每隔0.2秒改變一次標(biāo)志變量,并重新繪制字符串
*/
public void run(){
while(true){
//等待0.2秒
try{
Thread.sleep(200);
}catch(Exception e){}
//改變標(biāo)志變量
b = !b;
//重新繪制
repaint();
}
}
}
而復(fù)雜的動畫和該程序比較,只是每次繪制不同的圖片,把線程中的動作做的復(fù)雜一下罷了。