本文介绍了GWT中的JOptionPane.showInputDialog()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有任何简单的方法来创建具有单个文本输入控件的模式DialogBox的实例,这将按OK键返回输入到文本控件中的String?

Is there any simple way to create instance of modal DialogBox with single text input control, which will return String entered into the text control on pressing "OK"?

我正在寻找类似于JOptionPane.showInputDialog()的类似于Swing的一条线。

I'm looking for something similar to JOptionPane.showInputDialog() one-liner from Swing.

推荐答案

您可以创建自己的类,它将包含所有你需要的。
小例子:

You can create your own class,which will contain all you need.Small example:

class MyDialogBox extends DialogBox {
        private TextBox textBox = new TextBox();
        private Button okButton = new Button("Ok");

        public MyDialogBox(Label label) {
            super();
            setText("My Dialog Box");
            final Label l = label;
            okButton.addClickHandler(new ClickHandler() {
                @Override
                public void onClick(ClickEvent event) {
                    hide();
                    l.setText(textBox.getText());
                }
            });
            VerticalPanel vPanel = new VerticalPanel();
            vPanel.add(textBox);
            vPanel.add(okButton);
            setWidget(vPanel);
        }
    }

和使用

public void onModuleLoad() {
    Label label = new Label("Text");
    final MyDialogBox mDBox = new MyDialogBox(label);
    Button btn = new Button("Click me!");

    btn.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            mDBox.center();
            mDBox.show();
        }
    });
    RootPanel.get().add(label);
    RootPanel.get().add(btn);
}

这篇关于GWT中的JOptionPane.showInputDialog()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-14 23:42