Я создаю дерево GWT и хотел бы, чтобы оно изначально отображалось с открытыми узлами. Давайте возьмем стандартный Пример дерева из GWT javadocs :
public class TreeExample implements EntryPoint {
public void onModuleLoad() {
// Create a tree with a few items in it.
TreeItem root = new TreeItem("root");
root.addItem("item0");
root.addItem("item1");
root.addItem("item2");
// Add a CheckBox to the tree
TreeItem item = new TreeItem(new CheckBox("item3"));
root.addItem(item);
Tree t = new Tree();
t.addItem(root);
// Add it to the root panel.
RootPanel.get().add(t);
}
}
Я хочу, чтобы он изначально отображался как:
root
item0
item1
item2
item3
Теперь я подумал, что это так же просто, как установить состояние TreeItem
, которое я хочу открыть, вызвав setState(true)
: javadoc для setState
говорит "Устанавливает, есть ли дети отображаются ". Однако, если я добавлю, например,
root.setState(true);
к приведенному выше примеру я не получаю ожидаемого эффекта. Очевидно, ничего не меняется, когда я делаю root.setState(true);
или root.setState(false);
: дерево всегда отображается с закрытыми узлами.
Как мне получить желаемое поведение?