gwt VerticalPanel foreach - PullRequest
       4

gwt VerticalPanel foreach

0 голосов
/ 17 сентября 2011

Возможно ли выполнить итерацию VerticalPanel и получить только определенный виджет.

Я знаю, что вы можете сделать это с помощью списка строк в GWT, но это не работает для виджетов.Мне нравится короткая итерация, однако, если есть более длинный метод, он также приветствуется.

Задача: в основном определить, какой флажок в этой панели выбран.

это работает: basic foreachfor (строка i: my_list) ... ...

этот виджет: виджет gwt для (флажок ch: my_vpanel) ... ...

Ошибка, которую я получаю: невозможно преобразоватьот виджета типа элемента к CheckBox

1 Ответ

2 голосов
/ 17 сентября 2011

Вы можете перебирать виджеты ComplexPanel, такие как

for (Widget widget : verticalPanel) {
    //Do stuff
}

или

Iterator<Widget> it = verticalPanel.iterator();
while(it.hasNext()){
    Widget widget = it.next();
    //Do stuff
}

или

for (int i=0;i<verticalPanel.getWidgetCount();i++){
    Widget widget = verticalPanel.getWidget(i);
    //Do stuff
}

и видеть, является ли виджеттип CheckBox вы можете использовать

if (widget instanceof CheckBox){
    CheckBox checkBox = (CheckBox) widget;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...