Я работаю с Ваадином, и у меня есть некоторые проблемы с переборами вариантов в ComboBox.Мой объект выглядит следующим образом:
class MyObject{
private String text;
private Integer i;
public MyObject(String text,Integer i){
this.text = text;
this.i = i;
}
public String toString(){
return text;
}
//Getters and setters omitted
}
Я добавляю его в поле следующим образом:
MyObject o1 = new MyObject("o1",23);
MyObject o2 = new MyObject("o2",44);
ComboBox box=new ComboBox();
box.addItem(o1);
box.addItem(o2);
Это прекрасно работает, когда я хочу получить выбранные данные:
MyObject o3 = (MyObject)box.getValue();
Но теперь мне нужно перебрать варианты в ComboBox, и я не знаю как.Кажется, мне нужно какое-то удостоверение личности, но я не знаю, как это использовать.Я попробовал следующее безуспешно, но оно не работает (и действительно ужасно):
Collection IDs = box.getItemIds();
Iterator it = IDs.iterator();
while(it.hasNext()){
Object id = it.next();
Item item = IDs.getItem(id);
//What to do now?
}
Я хотел бы сохранить свой объект простым и избегать использования bean-компонентов и сложных контейнеров.Примеры Vaadins в основном для String, и это не очень мне помогает.Буду очень признателен за любую помощь.