Form类是一个典型的容器控件类,用于包含其它高层用户界面控件,一般不单独显示在屏幕上。

Item类是可以包含于Form容器中的控件类。

每一个Item实例只能存在于唯一的Form容器中,如果同一个实例放在不同的Form容器中,那么就会产生IllegalStateException异常。

Form类在布局方面,是按列进行组织的,每一类都有相同的宽度,没有水平方向的滚动条;在垂直方向上,Form的高度与其中Item的个数和高度有关。

 

Form常用方法有:构造方法以及append、insert、delete、deleteAll、size、getHeight、getWidth、get、set等方法。

 

------------------------------------------

 

具体练习如下:

 

/**
 * @作者 Jcuckoo
 * @创建日期 2008-11-6
 * @版本 V 1.0
 */

public class FormMIDlet extends MIDlet implements CommandListener{
 private Display display;
 private Form form;
 private int index;
 private Command exitCommand;
 public FormMIDlet() {
  display=Display.getDisplay(this);
  //创建一个Form实例
  form=new Form("Form测试。");
  StringItem st=new StringItem("StringItem_lable","StringItem测试。");
  index=form.append(st);
  System.out.println("第一次插入的位置是:"+index);
  StringItem st1=new StringItem("append_lable","append测试。");
  index=form.append(st1);
  System.out.println("第二次插入的位置是:"+index);
  StringItem st2=new StringItem("append_lable","append测试。");
  form.append(st2);
  StringItem st0=new StringItem("Insert_lable","insert测试。");
  form.insert(0, st0);
  Item it=form.get(1);
  System.out.println("获取第一个内容为:"+it.getLabel());
  System.out.println("显示高度为:"+form.getHeight());
  System.out.println("显示宽度为:"+form.getWidth());
  System.out.println("当前form的选项有:"+form.size()+"个");
  //form.delete(1);
  //form.deleteAll();

  exitCommand=new Command("退出",Command.EXIT,1);
  form.addCommand(exitCommand);
  form.setCommandListener(this);
 }
 protected void destroyApp(boolean arg0) {
 }
 protected void pauseApp() {
 }
 protected void startApp() throws MIDletStateChangeException {
  display.setCurrent(form);
 }
 public void commandAction(Command c, Displayable d) {
  if (c==exitCommand) {
            destroyApp(false);
            notifyDestroyed();
         }
 }
}

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐