例如,如果我有三个项目,并且我想根据组合框中选择的项目更改布局...我该如何实现?这是我的示例代码:
ComboBox combo = new ComboBox("My combo box");
combo.addItems("item 1", "item 2", "item 3");
combo.setTextInputAllowed(false);
combo.setNullSelectionAllowed(false);
combo.select("item 1");
combo.setImmediate(true);
combo.addValueChangeListener(new Property.ValueChangeListener() {
/**
*/
private static final long serialVersionUID = 1L;
@Override
public void valueChange(ValueChangeEvent event) {
Notification.show("Selected item: " + event.getProperty().getValue(), Type.HUMANIZED_MESSAGE);
}
});
ExampleGrid grid = new ExampleGrid();
grid.setWidth(100, Unit.PERCENTAGE);
Panel panel = new Panel(grid);
panel.setSizeFull();
addComponent(panel);
因此,在组合框中为三个项目创建了三个面板。但是,我不知道如何根据组合框中选择的项目更改布局?
当然,我可以轻松获得第一个面板。但是,我希望根据组合框选择看到所有三个面板。
答案 0 :(得分:0)
将面板放在那里并将它们与物品相关联。例如。使用枚举并将相关性存储在地图中。根据选择,在面板上添加值更改侦听器和setVisisble(false / true)。