1

最大深度が 2 の TreeTable があります。

  • fooType

    -ふー

    -ふー

fooType を選択した場合、プログラムですべての子アイテムを自動的に選択し、親アイテムの選択を解除します。しかし、これを試すと、常に IndexOutOfBoundsException が発生します。

myTreeTable.getSelectionModel().selectedItemProperty().addListener((obs, ov, nv) -> {
  if (nv.getValue() instanceof fooType) {
    myTreeTable.getSelectionModel().clearSelection(myTreeTable.getSelectionModel().getSelectedIndex());
    if (!nv.isExpanded()) {
      nv.setExpanded(true);
    }
    ObservableList<TreeItem<IfooTreeItem>> children = nv.getChildren();
    for (TreeItem<IfooTreeItem> item : children) {
      annotationsTreeTable.getSelectionModel().select(item);
    }
  }
});

複数選択モードが有効になります。

どんな助けでも感謝します。

4

1 に答える 1