Java me 诺基亚E72上J2ME中的LWUIT存在问题
嗯,我正在手机上开发一个应用程序,它将连接到我的电脑,问题是每次我向手机返回URL请求时,它都会在屏幕上显示上一个表单,而不是实际的表单,例如,这就是我的actionListener中的内容:Java me 诺基亚E72上J2ME中的LWUIT存在问题,java-me,nokia,lwuit,Java Me,Nokia,Lwuit,嗯,我正在手机上开发一个应用程序,它将连接到我的电脑,问题是每次我向手机返回URL请求时,它都会在屏幕上显示上一个表单,而不是实际的表单,例如,这就是我的actionListener中的内容: public void actionPerformed(ActionEvent ae) { if (ae.getCommand() == guiaUtil.cSelecionar()) { LoginRemote loginRemote = new LoginRemote();
public void actionPerformed(ActionEvent ae) {
if (ae.getCommand() == guiaUtil.cSelecionar()) {
LoginRemote loginRemote = new LoginRemote();
try {
//This is the request, returns true or false, does not affect the form
loginRemote.login(tLogin.getText(), tPassword.getText());
} catch (Exception e) {
GuiaUtil.error(e);
return;
}
guiaUtil.mainApp().startMenu();
}
}
然后在“guiaUtil.mainApp().startMenu()”中
public void startMenu() {
if (itemsMenu == null) {
itemsMenu = new List();
itemsMenu.setWidth(320);
itemsMenu.addItem("Sincronize Spots");
itemsMenu.addItem("Find Spots");
itemsMenu.addItem("Work");
itemsMenu.setFocus(true);
this.addComponent(itemsMenu);
this.addCommandListener(this);
this.addCommand(guiaUtil.cSelect());
Form form = new Form();
form.addComponent(itemsMenu);
}
form.show();
}
无论如何,在请求返回后,它再次显示我的登录表单,而不是显示菜单列表不确定在
loginRemote.Login(tLogin.getText(),tPassword.getText())中发生了什么;
如果您访问网络,我会将该部分放到另一个线程中。
“远程登录”完成后,通过某种回调通知主线程,
然后可以从edt中显示菜单表单。不确定
loginRemote.login(tLogin.getText(),tPassword.getText())中发生了什么;
如果您访问网络,我会将该部分放到另一个线程中。
“远程登录”完成后,通过某种回调通知主线程,
您可以从edt显示菜单格式。您必须将以下代码置于if条件之外
Form form = new Form();
form.addComponent(itemsMenu);
您有两种形式的对象。一个在if内部,另一个在if外部。在循环中创建的对象将丢失内部的作用域。您正在if外部显示窗体对象。这就是为什么没有显示菜单列表屏幕的原因 您必须将以下代码置于if条件之外
Form form = new Form();
form.addComponent(itemsMenu);
您有两种形式的对象。一个在if内部,另一个在if外部。在循环中创建的对象将丢失内部的作用域。您正在if外部显示窗体对象。这就是为什么没有显示菜单列表屏幕的原因 可能发生的情况是,您得到一个异常,使用
GuiaUtil.error处理它,然后从actionPerformed
返回,而不调用startmenus
我会在try/catch块中移动guiaUtil.mainApp().startMenu()
。可能发生的是,您得到了一个异常,使用guiaUtil.error处理它,然后从actionPerformed
返回,而不调用startMenu
我将在try/catch块中移动guiaUtil.mainApp().startMenu()