【问题标题】:gwt add custom widget to panelgwt 将自定义小部件添加到面板
【发布时间】:2009-11-05 16:05:04
【问题描述】:

我创建了一些类,其中创建了一堆小部件(例如标签、文本框)。我想即时创建小部件并将其添加到面板中。我该怎么做。

【问题讨论】:

  • 你的类是扩展 Composite 还是任何其他容器?如果是这样,不要忘记调用 initWidget。你能发布你的代码吗

标签: gwt widget


【解决方案1】:

假设您使用HorizontalPanelVerticalPanelFlowPanel 或其他带有add(Wiget) 方法的面板,您只需调用add(myWidget);

final VerticalPanel panel = new VerticalPanel();

final Button sendButton = new Button("Add widget");
panel.add(sendButton);
sendButton.addClickHandler(new ClickHandler() {

    @Override
    public void onClick(ClickEvent event) {
        panel.add(new Label(new Date().toString()));
    }
});

RootPanel.get().add(panel);

另一种方法是使用setVisible(boolean) 来显示和隐藏小部件,而不是添加和删除它们。

final VerticalPanel panel = new VerticalPanel();

final Button sendButton = new Button("Toggle visibility");
panel.add(sendButton);

final Label label = new Label(new Date().toString());
panel.add(label);

sendButton.addClickHandler(new ClickHandler() {

    @Override
    public void onClick(ClickEvent event) {
        label.setVisible(!label.isVisible());
    }
});

RootPanel.get().add(panel);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-29
    • 2014-04-08
    • 2015-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多