最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
使用J2ME技术实现简单的动画(附代码实现)
时间:2022-07-02 17:42:43 编辑:袖梨 来源:一聚教程网
在J2ME程序开发过程中经常需要实现游戏动画,例如简单的文字闪动,复杂的游戏界面变化等等,下面简单的介绍一下动画的原理,并附实现代码。
动画原理就是利用人的视觉暂留的生理特性,实现出来的一种假象。下面的代码就是不断的变化绘制的内容,实现文字的闪动。
程序的逻辑:每隔0.2秒变换一次绘制的内容,如果屏幕上没有绘制文字,则绘制,否则绘制文字。
实现代码如下:
package welcomecanvas;
import javax.microedition.lcdui.*;
public class DongHuaCanvas extends Canvas implements Runnable {
//标志是否绘制字符串
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);
//根据标志变量绘制字符串
if(b == true){
g.drawString("闪烁的文字",50,50,Graphics.LEFT | Graphics.TOP);
}
}
/**
* 线程方法,每隔0.2秒改变一次标志变量,并重新绘制字符串
*/
public void run(){
while(true){
//等待0.2秒
try{
Thread.sleep(200);
}catch(Exception e){}
//改变标志变量
b = !b;
//重新绘制
repaint();
}
}
}
而复杂的动画和该程序比较,只是每次绘制不同的图片,把线程中的动作做的复杂一下罢了。
动画原理就是利用人的视觉暂留的生理特性,实现出来的一种假象。下面的代码就是不断的变化绘制的内容,实现文字的闪动。
程序的逻辑:每隔0.2秒变换一次绘制的内容,如果屏幕上没有绘制文字,则绘制,否则绘制文字。
实现代码如下:
package welcomecanvas;
import javax.microedition.lcdui.*;
public class DongHuaCanvas extends Canvas implements Runnable {
//标志是否绘制字符串
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);
//根据标志变量绘制字符串
if(b == true){
g.drawString("闪烁的文字",50,50,Graphics.LEFT | Graphics.TOP);
}
}
/**
* 线程方法,每隔0.2秒改变一次标志变量,并重新绘制字符串
*/
public void run(){
while(true){
//等待0.2秒
try{
Thread.sleep(200);
}catch(Exception e){}
//改变标志变量
b = !b;
//重新绘制
repaint();
}
}
}
而复杂的动画和该程序比较,只是每次绘制不同的图片,把线程中的动作做的复杂一下罢了。
相关文章
- QQ经典版下载安装最新版-QQ经典版轻量版app官方正式版下载 12-17
- 豆包网页版官方入口-豆包网页版一键直达官网 12-17
- 抖音网页版官方入口-在线畅玩douyin.com 12-17
- 土豪漫画官方下载入口-安卓/iOS一键安装APP 12-17
- QQ经典版最新版本下载安装-QQ经典版app官方正版下载地址 12-17
- 漫蛙官网入口网页直达-漫蛙官网入口官方认证链接 12-17