来自GWT中的flexTable的getWidgets

时间:2012-08-07 15:50:38

标签: java gwt gwt2 flextable

在flex表中,3个小部件在运行时连续添加。

前2个小部件是ListBox,第3个小部件可以是listBox或textBox。

我想知道第三个widjet是listBox还是textBox ??

我的代码了解前两个小部件

int count=flexTable.getRowCount();
        for(int i =0;i<count;i++){

            ListBox lbPropreties = (ListBox) flexTable.getWidget(i, 0);
            String propertyname =lbPropreties.getValue(lbPropreties.getSelectedIndex());
            ListBox lbCondition = (ListBox) flexTable.getWidget(i, 1);
            String condition =lbCondition.getValue(lbCondition.getSelectedIndex());





        }

谢谢

1 个答案:

答案 0 :(得分:3)

简易解决方案:

Widget thirdWidget = flexTable.getWidget(i, 2);

if (thirdWidget instanceof ListBox) {
  ListBox listBox = (ListBox) thirdWidget;
  ...

} else if (thirdWidget instanceof TextBox) {
  TextBox textBox = (TextBox) thirdWidget;
  ...
}

或者,使用一些变量来存储,添加第三列时使用的是哪种小部件。