首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2ME开发 >

HelloMIDlet的小疑点

2012-01-09 
HelloMIDlet的小问题importjavax.microedition.midlet.*importjavax.microedition.lcdui.*publicclassHe

HelloMIDlet的小问题
import   javax.microedition.midlet.*;
import   javax.microedition.lcdui.*;

       
                        public   class   HelloMIDlet   extends   MIDlet
                        {
                        private   Display   display;
                        public   HelloWorld()   {

          super   ();

//   TODO   自动生成构造函数存根

Form   form   =   new   Form( "Hello   World ");

form.append( "Welcome   to   J2ME   World! ");

Display.getDisplay(this).setCurrent(form);

}


                        public   void   startApp()
                        {
                        System.out.println( "startApp   Called ")   ;
                        Form   t   =   new   Form( "画面 ");
                        display.setCurrent(t);
                        }
                        public   void   pauseApp()
                        {
                        System.out.println( "pauseApp   Called ")   ;
                        }
                        public   void   destroyApp(boolean   unconditional)
                        {
                        System.out.println( "destroyApp   Called   : "   +   unconditional)   ;
                        }
                        }
错误:
Project   "HelloMIDlet "   loaded
Project   settings   saved
Building   "HelloMIDlet "
C:\WTK25\apps\HelloMIDlet\src\HelloMIDlet.java:8:   方法声明无效;需要返回类型
                        public   HelloWorld()   {
                                      ^
1   错误
com.sun.kvem.ktools.ExecutionException
Build   failed


修改下就给分


[解决办法]
出售手机游戏。QQ:779856263
[解决办法]
display.setCurrent(t);
还没有创建,就直接使用了,所以空指针了


改下试试:
display = Display.getDisplay(this);
display.setCurrent(t);
[解决办法]
同意楼上
[解决办法]
不明白你是什么意图。首先,运行进入构造函数执行。
这里边有个form
Form form = new Form( "Hello World ");

form.append( "Welcome to J2ME World! ");

Display.getDisplay(this).setCurrent(form);

并且你让他显示出来。


之后呢?程序执行进入startApp里

Form t = new Form( "画面 ");
display.setCurrent(t);

又建个空Form t干嘛?
你把上边这两句删掉吧。已经可以实现Hello World的目的了。



[解决办法]
你在public void startApp()
{
System.out.println( "startApp Called ") ;
Form t = new Form( "画面 ");
display.setCurrent(t);
}
中调用display,但是这个东西没有被创建,使用前,需要通过display = Display.getDisplay(this);来获得,即可使用了
[解决办法]
1)进入构造函数执行。显示“Welcome to J2ME World!”

执行完之后立马执行2):

2)进入startApp(),显示Form内容“画面”。

这两个之间的时间间隔太短了,一闪而过。建议把stratApp()方法中From和显示注释掉,就出来了!
[解决办法]
同意楼上

[解决办法]
哈哈

热点排行