Я новый пользователь Vaadin с фоном JSF. В настоящее время я пытаюсь реализовать простую комбинацию с помощью vaadin.Что я хочу сделать, используя List в качестве списка элементов combobox, показывая поле Example.description в combobox, и когда один из выбранных элементов получает объект Example/Example.id как значение. (как и в JSF с использованием itemLabel = example.description, itemValue = example/example.id свойства f : selectItems)vaadin combobox item label и значение item
ответ
Это Ville из команды Ваадин. Вы можете сделать это довольно много, но в целом вы переключаете свой режим ComboBox с помощью метода setItemCaptionMode () ().
Однако, довольно близко к тому, что вы пытаетесь сделать, это достигается с помощью следующего примера:
public class Example {
private Integer id;
private String description;
public Example(Integer id, String description) {
this.id = id;
this.description = description;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
@Override
public void init() {
Window mainWindow = new Window("Combobox Application");
List<Example> examples = new ArrayList<Example>();
examples.add(new Example(new Integer(1), "First description"));
examples.add(new Example(new Integer(2), "Second description"));
examples.add(new Example(new Integer(3), "Third description"));
BeanItemContainer<Example> objects = new BeanItemContainer(Example.class, examples);
ComboBox combo = new ComboBox("Example", objects);
combo.setItemCaptionPropertyId("description");
mainWindow.addComponent(combo);
setMainWindow(mainWindow);
}
Здесь BeanItemContainer оборачивает свои POJO, и использует отражение для доступа к добытчиками.
Cheers.
Привет, Ville, спасибо за чистое объяснение. – sogukk
Я также новичок в vaadin, поэтому я не могу предоставить вам хорошее решение, но вы можете попробовать и использовать некоторый объект-обертку для каждой записи и переопределить метод toString()
, чтобы распечатать название города.
Кроме того, вы можете попробовать использовать BeanContainer<String, City>
в качестве источника данных для этого списка. Строкой будет имя/id города.
Существует более элегантный способ для класса Enum:
public enum Planet {
MERCURY,
VENUS,
EARTH,
MARS,
JUPITER,
SATURN,
URANUS,
NEPTUNE,
PLUTO;
public String getCaption(){
return name();
}
public int getId(){
return ordinal();
}
}
BeanContainer<Integer, Planet> container = new BeanContainer<>(Planet.class);
container.setBeanIdProperty("id");
container.addAll(EnumSet.allOf(Planet.class));
ComboBox planet = new ComboBox("Planet", container);
planet.setItemCaptionPropertyId("caption");
Autor: Андрис Лапиньш
https://vaadin.com/forum/#!/thread/280467/280466
- 1. Dummy Item в ComboBox
- 2. ComboBox item return index
- 3. ComboBox default item
- 4. vb.net combobox hide item
- 5. Combobox Empty Item
- 6. Combobox selected item WPF
- 7. TreeTable inserting new item (Vaadin)
- 8. QML ComboBox item DropDownMenu style
- 9. C# Combobox dropdownlist item type
- 10. label-item-label-label XML: FO вертикальное выравнивание
- 11. Невозможно изменить ComboBox selected item
- 12. Результаты VB.NET ComboBox selected item
- 13. Colorcoding на основе ComboBox item
- 14. WinForms Combobox not Removing Item
- 15. delete string combobox item C#
- 16. MouseOver item combobox extjs 4
- 17. WPF Auto search combobox item
- 18. C# combobox select new item
- 19. ZK - Combobox Selected Item Image
- 20. flex 3 combobox selected item
- 21. VB.Net WPF ComboBox - Unselect Item
- 22. Binding ComboBox item to string
- 23. Joomla item item
- 24. CSS active item item
- 25. item item with asterix
- 26. Преобразование узла JCR в Vaadin Item (Magnolia)
- 27. WPF Combobox Selected Item Error - Отображение «System.Data.Entity.DynamicProxies»
- 28. ComboBox wpf not item не выбран
- 29. Выберите значение Spinner item
- 30. Установите VALUE и LABEL на ITEM JComboBox в Java
В настоящее время идентификаторы объектов показаны в поле со списком ([email protected]) – sogukk