在GWT中动态添加文本框?

时间:2011-11-07 12:08:43

标签: gwt

我有一个要求,我需要动态添加文本框。请考虑以下示例:

TextBox1 TextBox2 TextBox3 AddButton

首先,我需要显示上面的文本框和旁边的一个添加按钮。单击“添加”按钮时,应显示一个新的文本框行,如上所示。如何在GWT中实现?

谢谢!

1 个答案:

答案 0 :(得分:1)

首先,让我们为您的任务创建UI文件:

<g:VerticalPanel>
    <g:FlowPanel ui:field="textAreaContainer">
        <g:TextBox ui:field="Textbox1"/>
        <g:TextBox ui:field="Textbox2"/>
        <g:TextBox ui:field="Textbox3"/>
    </g:FlowPanel>
    <g:Button ui:field="addTButton" />
</g:VerticalPanel>

没有任何款式等......仅作为例子。 并且至少为此视图创建java文件。

public class SampleGWT {
interface SampleGWTUiBinder extends UiBinder<VerticalPanel, SampleGWT> {
}

private static SampleGWTUiBinder ourUiBinder = GWT.create(SampleGWTUiBinder.class);
@UiField
FlowPanel textAreaContainer;
@UiField
TextBox Textbox1;
@UiField
TextBox Textbox2;
@UiField
TextBox Textbox3;
@UiField
Button addTButton;

public SampleGWT() {
    VerticalPanel rootElement = ourUiBinder.createAndBindUi(this);
}

@UiHandler("addTButton")
public void onAddTB(ClickEvent event){
    TextBox textBox = new TextBox();
    textAreaContainer.add(textBox);
}}

如果您有任何疑问 - 请欢迎。