`
zsnlovewl
  • 浏览: 173611 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

J2ME学习笔记(基础3)

    博客分类:
  • J2ME
阅读更多
J2ME开发中有中文问题吗?可能有,但是我目前没有遇到。因为我没有手机,只能在模拟器上运行J2ME程序,真实的情况是什么样子我也不知道。在水木上有人说已经出现了中文问题,在模拟器上好好的,到了真正的手机上却是一团乱码。我现在也没有办法,只有在遇到的时候再补上这一节。我写的测试程序如下所示,这个程序是在HelloWorld.java的基础上改进而来的

package fancy.test;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.*;
public class Poem extends MIDlet implements CommandListener
{
private Display display;
private Form props;
private Command exitCommand = new Command("Exit", Command.EXIT, 1);
public Poem()
{
display = Display.getDisplay(this);
}
public void startApp()
{
props = new Form("影落寒潭的签名档");
props.append("小楼一夜听春雨\n");
props.append("深巷明朝卖杏花\n\r");
props.append("虹虹的签名档\n");
props.append("鸳鸯独宿何曾惯\n");
props.append("化作西楼一缕云\n");
props.addCommand(exitCommand);
props.setCommandListener(this);
display.setCurrent(props);
}
public void commandAction(Command c, Displayable s)
{
if (c == exitCommand)
{
destroyApp(false);
notifyDestroyed();
}
}
public void destroyApp(boolean unconditional)
{
}
public void pauseApp()
{
display.setCurrent(null);
props = null;
}
}
使用普通的编辑器编辑好上述文件以后,保存为Poem.java,保存路径为
src\fancy\test。然后在Ktoolbar中编译,一切无误之后,单击Setting按钮,出现一个配置窗口,选择MIDlets面板,单击Add按钮,依次输入Poem、fancy.png、fancy.test.Poem三项。单击OK按钮,再单击OK按
钮,关闭配置窗口,回到Ktoolbar的主界面,再次编译。一切无误之后,单击Run按钮运行程序。
注意:每新编写一个程序,都要按照这个步骤进行配置,再编译运行,我以后就不再重复描述这个步骤了。
请看下面的代码(Prop.java):
package fancy.test;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.*;
public class Prop extends MIDlet implements CommandListener
{
private Display display;
private Form props;
private Command exitCommand = new Command("Exit", Command.EXIT, 1);
public Prop()
{
display = Display.getDisplay(this);
}
public void startApp()
{
props = new Form("System Properties");
props.append("Hello World!\n");
long time=System.currentTimeMillis();
props.append("current time:"+time+"\n");
props.append("microedition.configuration:"+
System.getProperty("microedition.configuration")+"\n");
props.append("microedition.profiles:"+
System.getProperty("microedition.profiles")+"\n");
props.append("microedition.platform:"+
System.getProperty("microedition.platform")+"\n");
props.append("microedition.locale:"+
System.getProperty("microedition.locale")+"\n");
props.append("microedition.encoding:"+
System.getProperty("microedition.encoding")+"\n");
props.append("java.version:"+System.getProperty("java.version")+"\n");
/
/null
props.append("java.vendor:"+System.getProperty("java.vendor")+"\n");
//n
ull
props.append("java.vm.name:"+System.getProperty("java.vm.name")+"\n");
/
/null
props.append("java.vm.version:"+System.getProperty("java.vm.
version")+"
\n");//
null
props.append("os.name:"+System.getProperty("os.name")+"\n");//nu
props.append("os.arch:"+System.getProperty("os.arch")+"\n");//nu
props.append("os.version:"+System.getProperty("os.version")+"\n");
//nul
l
props.append("user.name:"+System.getProperty("user.name")+"\n");
//null
props.addCommand(exitCommand);
props.setCommandListener(this);
display.setCurrent(props);
}
public void commandAction(Command c, Displayable s)
{
if (c == exitCommand)
{
destroyApp(false);
notifyDestroyed();
}
}
public void destroyApp(boolean unconditional)
{
}
public void pauseApp()
{
display.setCurrent(null);
props = null;
}
}
这个程序的作用是输出系统中各个环境属性的值。诀窍是使用System类的
getProperty()方法。请注意,J2ME核心包的System类已经不支持getProperties()方法了,而且很多环境属性都不再支持了,比如java.version、java.vendor等等。 <!--v:3.2-->
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics