2009-11-05 64 views
3

我创建了一些类,在其中创建了一堆小部件(例如标签,文本框)。我想立即创建小部件并将其添加到面板。我怎样才能做到这一点。gwt添加自定义小部件到面板

+0

您的课程是扩展Composite还是其他任何容器?如果是的话不要忘记调用initWidget。你可以发布你的代码吗? – 2009-11-06 16:04:57

回答

8

假设使用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); 
相关问题