0

我正在尝试使用 LWUIT 和简单的应用程序,例如“hello world”..
但是第一行StartApp()- Display.init(this)- 导致应用程序关闭抛出未捕获的异常.. 我完全糊涂了..

import com.sun.lwuit.Command;
import com.sun.lwuit.Container;
import com.sun.lwuit.Dialog;
import com.sun.lwuit.Display;
import com.sun.lwuit.Form;
import com.sun.lwuit.TextArea;
import com.sun.lwuit.events.ActionEvent;
import com.sun.lwuit.events.ActionListener;
import com.sun.lwuit.layouts.BorderLayout;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class Main extends MIDlet {

    private int selectedIndex;
    private Form f;

    public Main() {}

public void startApp()  {
    System.out.println("before");
    try {
        System.out.println("during");
        Display.init(this);
    } catch(Exception h) {
        System.out.println("after");
        h.printStackTrace();
    }
}
  protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
    // TODO Auto-generated method stub
    }
  protected void pauseApp() {
    // TODO Auto-generated method stub
    }

请帮忙。

4

2 回答 2

0

看看你的进口。我认为问题就在那里。我将删除 javax.microedition.lcdui.*;

在这个网站上,您可以看到诺基亚 UI 演示是如何启动的。

诺基亚 UI DEMO MIDlet

我发现查看我的代码的另一个解决方案。将 放在Display.init(this)Midlet 构造函数中,而不是放在 startApp 方法中。

于 2013-10-22T18:22:53.627 回答
0

在显示任何表单之前,开发人员必须调用 Display.init(Object m) 以注册当前的 MIDlet。

于 2014-05-23T09:36:53.980 回答