代码之家  ›  专栏  ›  技术社区  ›  user_1357

有没有办法在GWT中创建类似Javascript的警报?

  •  5
  • user_1357  · 技术社区  · 15 年前

    嗨,有没有办法创造类似的东西 Window.alert() 基本上我想定制 窗口。警报() 是“好”按钮,可以说别的,但是

    谢谢。

    3 回复  |  直到 15 年前
        1
  •  14
  •   Peter Knego    15 年前

    Window.alert() 已经在GWT中可用。它将打开一个本地对话框,其中包含由浏览器区域设置本地化的“确定”按钮。无法更改此警报框。

    使用 PopupPanel DecoratedPopupPanel .

        2
  •  0
  •   Alberto Zaccagni    15 年前

    你可以用 PopupPanel

        3
  •  0
  •   Harald Schilly    15 年前

    我通常编写一个通用对话框,它只创建一次,当我再次需要它时,html内容和标题将被替换。您还可以添加一个OK/Cancel按钮组合,这非常简单。

    private DialogBox   dialog     = null;
    private HTML        dialogHtml = new HTML();
    public void onDialog(final String title, final String html) {
      if (dialog == null) {
        dialog = new DialogBox();
        dialog.getElement().getStyle().setZIndex(99);
        dialog.setWidth("500px");
        dialog.setGlassEnabled(true);
        dialog.setAnimationEnabled(true);
        dialog.setModal(true);
        VerticalPanel vp = new VerticalPanel();
        vp.add(dialogHtml);
        HorizontalPanel hp = new HorizontalPanel();
        hp.setWidth("100%");
        Button close = new Button("close");
        close.setWidth("200px");
        close.addClickHandler(new ClickHandler() {
          @Override
          public void onClick(ClickEvent event) {
            dialog.hide();
          }
        });
        hp.add(close);
        hp.setCellHorizontalAlignment(close, HasHorizontalAlignment.ALIGN_CENTER);
        hp.getElement().getStyle().setMarginTop(40, Unit.PX);
        vp.add(hp);
        vp.setSpacing(10);
        dialog.add(vp);
      }
      dialogHtml.setHTML(html);
      dialog.setHTML(title); // the actual title
      dialog.show();
      dialog.center();
    }
    

    HTML内容非常简单,即。

    <div style="width: 500px; overflow: auto;">...</div>