随笔分类 - J2ME
摘要:1、J2ME的Image类花图片不支持alpha效果,所以有些效果都不好实现,不过好在有getRGB()和 createRGBImage()这两个函数,使用它们完全可以实现图片的alpha显示,可以让图片实现淡入淡出效果,还能实现换色等功能。举例如下: private Image test = Image.createImage("/test.png"); private Image test2 =alphaAdjust(test2, 0x7F); g.drawImage(test, 0, 0, 0); g.drawImage(test2, 100, 100, 0); pu
阅读全文
摘要:打包一个工程时发现就算混淆了也比预料的大很多,解压jar看了下发现时.svn目录搞的鬼,所以需要在打包时工程设置里排除掉svn目录1、工程上右键选择 Properties-->Java Build Path-->Source2、展开Source下面的所有目录,依次选择 Excluded-->Edit3、然后在Exclustion patterns右边选择 Add, 添加 **/.svn/ 保存即可
阅读全文
摘要:在开发J2ME项目的时候,配置WTK, JAVA ME的模拟器各种不方便,rms还老保存出错,后来发现了KEmulator,还能查看内存,图片等,真是神器啊,特此留下配置存档1.新建或者导入已有J2me工程2.下载Kemulator并解压缩到任意目录3.在工程上选择 Properties -> Java Build Path -> Libraries -> Add External JARs...->选择添加目录下的 Kemulator.jar4.选择 Java Build Path -> Order and Export 选中Kemulator.jar 点击up
阅读全文
摘要:备份作参考,注意切换时的白屏等问题public void switchCanvas(int id) { curCanvasId = id; if (curCanvasId == 1) { canvas_1 = new ScreenManager_1(); dataManager = new DataManager_1(null/** this.getAppProperty("MIDlet-Version"* )*/); dataManager.load(); // reset SPAC system if (DeviceConstants_1.SPAC_ENABLE)...
阅读全文
摘要:http://eclipseme.org/docs/installation.html官方站点Eclipse3.5 里面是是 Help->Install New Software->Add然后把网页上eclipseme的链接加进去下载安装
阅读全文
摘要:在J2ME里做项目,写了一个函数来更新标题: public void setTitleString(String str) {strTitle = null; strTitle = str; }常量字符串放在interface里,逻辑类继承接口final int STR_TEST1 = 0;final int STR_TEST2 = 1; public final String[] str = { "测试1", //0 "测试2", //1}然后调用:setTitleString(str[STR_TEST1 ]);来设置标题,在模拟器和NOKIA一个机器
阅读全文
摘要:J2ME 触摸处理一,MIDP Canvas类里面就有处理触摸技术相关的类,直接用就行了,蛮简单。类结构:java.lang.Object|_ javax.microedition.lcdui.Displayable |_ javax.microedition.lcdui.Canvas二,相关函数:1,判断类使用 hasPointerEvents检测设备是否支持触摸,如果支持,则返回truepublic boolean hasPointerEvents()Checks if the platform supports pointer press and release events. Re..
阅读全文
摘要:1, Eclipse配置首先,运行Eclipse,选择Window---->Preference,在左侧数型框中选择java--->debug,在右侧debug选项区域中把Suspend Execution的前两个选项取消选择,也将就是下面两个(不要选上哦):Suspend execution on uncaught exceptionSuspend execution on compilation errors。然后,在Communication中将第一个Debugger timeout (ms)的时间设置15000。完成以上两步,你就可以Debug你的j2me程序了。2, 开始
阅读全文
摘要:最近一个项目里用到了JSR75-FileConnection,第一次用某个API总会出不少问题, 这里记录下来,同时也和大家分享一下。 本文问题:删除目录的时候是用FileConnection的delete()函数,发现对目录只有空的才能删除,否则会报java.io.IOException。没办法,只能自己写一个删除函数了,目录、文件通统杀掉。void delete() Deletes the file or directory specified in the Connector.open() URL. /** function: 删除文件或者目录,如果是目录,则删除目录下所有子目录和文件.
阅读全文
摘要://j2me 按任意键,显示键值到手机屏幕上import javax.microedition.midlet.*;import javax.microedition.lcdui.*;import javax.microedition.lcdui.Font;import javax.microedition.lcdui.CustomItem;import java.util.*;public class KeyTest extends MIDlet implements CommandListener{private Command exit;private Display display;pr
阅读全文
摘要:J2ME游戏手机全屏幕(这里指标准MIDP2.0使用setFullScreenMode(true);) 做过多种机型产品的朋友都知道,虽然标准MIDP2.0支持setFullScreenMode设置全屏幕,但是之后使用getWidth(), getHeight()来取得屏幕宽高的时候会发现,很多机型都没有全屏,那叫一个郁闷啊,所以这里我写下这篇文章,帮助大家来解决这个问题。1、改方法适用于国内基本所有机型S60、S40、MOTO等,以及SoftBank 3GC等。2、不能全屏的主要解决办法2个:a) 使用系统自带sizeChanged()来取得屏幕宽和高;b) 在Canvas类的构造函数里使用
阅读全文
摘要:双缓冲主要是用来解决屏幕闪烁以及绘图效率的问题,这里介绍下MIDP里面使用方法。1、有一个函数可以判断设备是否实现了双缓冲:isDoubleBuffered(),如果返回true,表示设备自身实现了双缓冲,理论上说我们就不用再自己设置了。不过为了安全第一,大家普遍认同的做法是,不管设备有没有实现,我们都自己设置一个,反正多做没有坏处。2、自己实现双缓冲代码如下:// initialize: Image bufferImage = null; bufferImage=Image.createImage(scrW,scrH);//in paint:public void paint(Graphic
阅读全文
摘要:1、JAVAC.EXE是编译器命令,它将java程序编译成字节码.JAVA.EXE是解释器命令.用来解释编译后的字节码,可将字节码解释成二进制机器码.JAVA保存的文件名须与类名一致 2、文件名和类名的一致性 如文件只有一个类,那么文件名必须与类名一致,大小写也要一致 一个文件中只能有一个public类 如文件不只一个类,则文件名必须与声明为public的类名一致 如文件不只一个类,也没有声明为public类,则文件名可与其它类的名字中的一个保持一致 如类中有main方法,没有声明为public的类,文件名保存为与含有main()方法的类名一致3、第一个简...
阅读全文
摘要:序:虽然写了将近一年的J2ME游戏,对这个感念还是比较模糊,所以读了王森先生的书写点记录,当自己是新手重新学一遍,可能比较乱,算是随笔了~~~~~1.1 用JAVA写程序的时候会使用到SUN提供的JAVA标准类库,是由各种各样包(package)组成的核心类库(Core Class)即java.*,以及扩充类库(Extended Class)即javax.*;1.2 CLDC和MIDPCLDC:J2ME里面有Configuration(配置)的概念,基本是指硬件的能力(cpu,内存等),分别为CLDC(Connected Limited Device Configuration可连接外界,资源
阅读全文
摘要:Borland的CPP32是预处理工具,可以去处注释,合并文件等,不但可以用在C/C++文件上,还可以用在JAVA文件上,这样就可以在某些时候在JAVA文件里使用C/C++中的#include和#define,比较方便.以下是一个简单的说明,这个东西不容易找,呵呵~~今天发现cpp32.exe产生的程序可避免行号,并且可保留用/* */标记的注释,拿我的某个项目来举个例子,原来调用cpp32程序的批处理中代码如下:copy %APP_NAME%.java ../src/cpp32tmp.javacpp32.exe -o ../src/%APP_NAME%.java ../src/cpp32t.
阅读全文

浙公网安备 33010602011771号