关于代号为1的按钮动作的关闭对话框

时间:2013-03-12 11:09:15

标签: lwuit codenameone

我做了一个对话框,其中有一些按钮。

关于我希望完成对话的其中一个按钮的操作。

我不想在其中添加任何命令。

请帮忙。

这是我的代码。

Form form = (Form) createContainer("/theme", "MYDialog1"); Container container = (Container) findByName("Container", form); button = new Button(new Command("Close"),i)); try { button.setUIID("LabelButton"); } catch (Exception exception) { exception.printStackTrace(); } button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { ?????? } }); container.addComponent(button); Dialog.show("", form, null);

2 个答案:

答案 0 :(得分:4)

如果向对话框添加命令,它将默认配置对话框。

您可以手动调用dialog.dispose()关闭对话框,以使当前对话框使用Dialog dlg = (Dialog)Display.getInstance().getCurrent();

答案 1 :(得分:0)

您在对话框和容器之间没有任何关系。因为这个原因你无法处置对话框。

我从你的问题中理解的是你不会使用命令,因为你想要你的gui按钮。

我的建议是创建这样的对话框(我认为可以工作):

Dialog dialog = new Dialog();
    Display.getInstance().callSerially(new Runnable() {
        public void run() {
            dialog.setLayout(new BoxLayout(BoxLayout.Y_AXIS));
            ...
            dialog.addComponent(dialog);

            button = new Button(new Command("Close"),i));
             try 
             { 
               button.setUIID("LabelButton"); 
              }
            catch (Exception exception) 
             {
            exception.printStackTrace(); 
             }
             button.addActionListener(new ActionListener() 
              { 
                  public void actionPerformed(ActionEvent evt) 
                    {
                        dialog.dispose();//???????????
                    }

            dialog.addCommand(okCommand);
            ...
            dialog.show();
        }
    });

此对话框需要是按钮识别的类成员。