Java me 如何在LWUIT表单中添加LWUIT表单?

Java me 如何在LWUIT表单中添加LWUIT表单?,java-me,lwuit,lwuit-form,Java Me,Lwuit,Lwuit Form,我试图将一个LWUIT表单添加到另一个LWUIT表单中,但在运行时收到一个内部错误: Installing suite from: http://127.0.0.1:1975/SmartPhoneBanking.jad java.lang.IllegalArgumentException: A form cannot be added to a container - com.sun.lwuit.Container.insertComponentAt(), bci=50 - com.sun.

我试图将一个LWUIT
表单
添加到另一个LWUIT
表单
中,但在运行时收到一个内部错误:

Installing suite from: http://127.0.0.1:1975/SmartPhoneBanking.jad
java.lang.IllegalArgumentException: A form cannot be added to a container
 - com.sun.lwuit.Container.insertComponentAt(), bci=50
 - com.sun.lwuit.Container.addComponent(), bci=19
 - com.sun.lwuit.Form.addComponent(), bci=5
 - view.test.<init>(), bci=63
 - view.MenuPrincipalForm.actionPerformed(), bci=178
 - com.sun.lwuit.util.EventDispatcher.fireActionSync(), bci=19
 - com.sun.lwuit.util.EventDispatcher.fireActionEvent(), bci=89
 - com.sun.lwuit.Button.fireActionEvent(), bci=70
 - com.sun.lwuit.Button.released(), bci=17
 - com.sun.lwuit.Button.pointerReleased(), bci=1
 - com.sun.lwuit.Form.pointerReleased(), bci=93
 - com.sun.lwuit.Component.pointerReleased(), bci=7
 - com.sun.lwuit.Display.handleEvent(), bci=125
 - com.sun.lwuit.Display.edtLoopImpl(), bci=115
 - com.sun.lwuit.Display.mainEDTLoop(), bci=198
 - com.sun.lwuit.RunnableWrapper.run(), bci=242
 - java.lang.Thread.run(), bci=11
Process exited with exit code 0
在另一个
表格中

...
private Form xxx = new test("xxx");
...
addComponent(xxx);
...

您正在将表单添加到容器中,当您将xxx添加到您要添加表单的任何位置时,它会在异常中正确地表示


使用
xxx.show()。因为可以将一个
表单
添加到另一个
表单
。没有问题。我在问题中包含了代码。但我想对其中包含的按钮进行
转换。这就是我想添加表单的原因。因此,如果调用
show()
,那么新表单将占据已显示表单的所有区域!但我只想占用一个区域!addComponent不会形成转换,仅替换。不管怎样,将表单添加到按钮位置时,您期望的行为是什么?是否希望整个标题和所有内容都显示在按钮所在的位置?我希望按钮在添加到表单时具有过渡外观。您将表单添加到容器中,而不是将按钮添加到表单中,这是错误的,无论您尝试做什么。要制作简单的动画,只需使用接受转换的replace()。在LWUIT 1.5中,您还可以设置布局动画,这样按钮将“飞入”LWUIT demo 1.5的动画演示以获取该布局的示例。
...
private Form xxx = new test("xxx");
...
addComponent(xxx);
...