【发布时间】:2016-01-11 23:44:53
【问题描述】:
我是 Vaadin 的新手。 我想创建一个页面,左侧有三个选项。根据选项选择组合框将出现在右侧,特定于左侧的选项。我想要带有标签的组合框。
名称:“组合框菜单”
到目前为止,我可以单击左侧的选项并在右侧显示组合框,但无法显示带有组合框的标签。标签是一个组件,组合框也是。当我将两者都添加到面板时。期望标签和组合框都显示,但最后一个(组合框)忽略第一个(标签)。我不确定为什么会这样。如果有人可以帮助我,我将不胜感激。 谢谢
这是我的代码:
HorizontalLayout hLayout;
Panel hpanel;
HorizontalSplitPanel hsplit;
VerticalSplitPanel vsplit;
tree.setImmediate(true);
tree.addItem("OP1");
tree.addItem("OP2");
tree.addItem("OP3");
hsplit.setFirstComponent(tree);
tree.addListener(new Component.Listener() {
public void componentEvent(Component.Event event) {
Object o = tree.getValue();
System.out.println("selected = " + o);
showWindowtab(o);
}
});
hpanel.setContent(hsplit);
hLayout.addComponent(hpanel);
hLayout.setSpacing(true);
final VerticalLayout main = new VerticalLayout();
main.setMargin(true);
setContent(main);
main.addComponent(hLayout);
private void showWindowtab(Object itemClicked) {
Label label = new Label("Here is example of Combo Box");
hsplit.setSecondComponent(label);
String document[] = { "X", "Y", "Z" };
ComboBox cb = new ComboBox();
cb.setInputPrompt("Select values");
cb.setInvalidAllowed(false);
cb.setNullSelectionAllowed(false);
for (int i = 0; i < document.length; i++) {
cb.addItem(document[i]);
}
cb.setImmediate(true);
setFocusedComponent(cb);
hsplit.setSecondComponent(cb);
}
【问题讨论】: