我正在学习GWT

在flexTable的第一行中,我添加了combobox,combobox,文本框,AddButton,Remove按钮。

在addButton 2的单击事件上,将行添加到flexTable中,其组成与第一个相同。 (combobox,combobox,文本框,AddButton,Remove按钮。)

private Button getAddbutton() {

        addbutton = new Button("");
        addbutton.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
                int i = flexTable.getRowCount();
                System.out.println(" i " + i);
                i++;
                flexTable.setWidget(i, 0, getPropertyList());
                flexTable.setWidget(i, 1, getConditionList());
                flexTable.setWidget(i, 2, getKeyWord());
                flexTable.setWidget(i, 3, getAddbutton());

                flexTable.setWidget(i, 4, getRemove());
                remove.setStyleName("cmis-Button-removeOn");
                remove.setTitle(""+i);
            }
        });
        addbutton.setSize("25px", "25px");
        addbutton.setStyleName("cmis-Button-Add");

    return addbutton;
}


我的输出是

 i 1
 i 3
 i 5
 i 7


为什么rowCount增加了2,尽管我在coloumn中仅添加了4行

最佳答案

这是因为flexTable索引从0开始,但是您增加了行数。因此,只需删除i ++。

07-24 19:09