我正在尝试学习J2ME,我遇到了表单问题。我的问题是我有两种形式,一种是“主”形式和一种“问候”形式。我无法弄清楚如何从'main'表单中调出'问候'表单。我想要一旦midlet发射;问候表格由主表格直接调用。我的代码示例如下所示。
此代码用于问候表单(greetingsClass.java)
import javax.microedition.lcdui.*;
public class greetingsClass {
public Display greetingsDisplay;
public Form loginform;
public void login()
{
loginform = new Form("Login Class Form");
loginform.append("Ok! Iside login Classs form");
greetingsDisplay = Display.getDisplay(this);
greetingsDisplay.setCurrent(loginform);
}
}
此代码适用于主窗体(FormMIDlet.java)
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;
public class FormMIDlet extends MIDlet {
public Display FormMIDletdisplay;
public Form MainMIDletform;
public LoginClass LoginFormObject;
public void startApp() {
MainMIDletform = new Form("Main Class Form");
MainMIDletform.append("Calling LoginClass Form");
FormMIDletdisplay = Display.getDisplay(this);
FormMIDletdisplay.setCurrent(MainMIDletform);
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {
notifyDestroyed();
}
}
我想在代码的第一部分(greetingsClass.java)中使用表单 在第二部分中显示,这是midlet的主要形式(FormMIDlet.java)。
答案 0 :(得分:3)
我希望此代码可以帮助您:
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.midlet.*;
public class myMidlet extends MIDlet implements CommandListener {
private Form greetings;
private Form MainForm;
private Command okCommand;
Display display;
public myMidlet() {
display = Display.getDisplay(this);
greetings = new Form("greetings");
MainForm = new Form("MainForm");
okCommand = new Command("Ok", Command.OK, 0);
MainForm.addCommand(okCommand);
MainForm.setCommandListener(this);
}
public void startApp() {
MainForm.append("This is MainForm");
display.setCurrent(MainForm);
}
public void pauseApp() {
...
}
public void destroyApp(boolean unconditional) {
...
}
public void commandAction(Command cmnd, Displayable dsplbl) {
if (cmnd == okCommand) {
greetings.append("This is greeting Form");
display.setCurrent(greetings);
}
}
}
Display类是为每个活动MIDlet实例化的显示管理器,并提供检索有关设备显示功能的信息的方法。通过调用Display.setCurrent()方法使屏幕可见
表单是一个屏幕,其中包含任意项目组合(例如图像,文本,文本字段,选项组)。表单是屏幕的子项,屏幕实现可显示的界面。
可显示类是可以在设备屏幕上显示的UI元素,而Display类抽象实际设备屏幕的显示功能并使其可供您使用。它提供了获取有关屏幕的信息以及显示或更改要显示的当前UI元素的方法。因此,MIDlet使用Display类的setCurrent(Displayable元素)方法在Display上显示可显示的UI元素。可显示的类实现Displayable接口。
可显示对象是能够放置在显示器上的对象
参考文献:
MIDP GUI Programming
J2ME Tutorial