Checkbox 如何将复选框组件添加到树中?

Checkbox 如何将复选框组件添加到树中?,checkbox,tree,vaadin,Checkbox,Tree,Vaadin,我正在使用Vaadin7.5.3开发一个web应用程序。我需要一个有可选择节点的树。我想使用复选框选择节点。在尝试了许多方法和目不转睛地观察之后,我找不到如何将复选框组件添加到树节点。据我所知,在当前最新版本(即Vaadin 7.5.6)之前,这是不可能的,正如Jouni在本文中指出的那样。他也开赛了,但到目前为止我没有看到任何变化 尽管如此,您应该能够通过使用。您可以找到一个完整的示例,下面是其中的摘录: final TreeTable ttable = new TreeTable("My T

我正在使用Vaadin7.5.3开发一个web应用程序。我需要一个有可选择节点的树。我想使用复选框选择节点。在尝试了许多方法和目不转睛地观察之后,我找不到如何将复选框组件添加到树节点。

据我所知,在当前最新版本(即Vaadin 7.5.6)之前,这是不可能的,正如Jouni在本文中指出的那样。他也开赛了,但到目前为止我没有看到任何变化

尽管如此,您应该能够通过使用。您可以找到一个完整的示例,下面是其中的摘录:

final TreeTable ttable = new TreeTable("My TreeTable");
ttable.addContainerProperty("Name", CheckBox.class, "");
ttable.addContainerProperty("City", String.class, "");
ttable.setWidth("20em");

// Create the tree nodes
ttable.addItem(new Object[]{new CheckBox("Root"), "Helsinki"}, 0);
ttable.addItem(new Object[]{new CheckBox("Branch 1"), "Tampere"}, 1);
ttable.addItem(new Object[]{new CheckBox("Branch 2"), "Turku"}, 2);
ttable.addItem(new Object[]{new CheckBox("Leaf 1"), "Piikkiö"}, 3);
ttable.addItem(new Object[]{new CheckBox("Leaf 2"), "Parainen"}, 4);
ttable.addItem(new Object[]{new CheckBox("Leaf 3"), "Raisio"}, 5);
ttable.addItem(new Object[]{new CheckBox("Leaf 4"), "Naantali"}, 6);

// Set the hierarchy
ttable.setParent(1, 0);
ttable.setParent(2, 0);
ttable.setParent(3, 1);
ttable.setParent(4, 1);
ttable.setParent(5, 2);
ttable.setParent(6, 2);

// Expand the tree
ttable.setCollapsed(2, false);
for (Object itemId: ttable.getItemIds())
    ttable.setCollapsed(itemId, false);

ttable.setPageLength(ttable.size());
这就是输出


这是一个老问题,因此值得一提的是:Vaadin演示页面有一个例子:


到目前为止,您都做了些什么?(您是否尝试过树可编辑模式)?您所说的可编辑模式是什么意思?你的意思是
tree.setReadOnly(false)
?为什么不使用TreeGrid?@Alex78191,它当时并不存在