내 프로그램에 TreeView
과 Button
이 있습니다. 이 Button
을 클릭 할 때마다 TreeView에서 마지막으로 선택한 요소 바로 다음에 새 요소가 추가됩니다. 내가 "테스트 작업"요소를 선택하고 "추가"버튼을 클릭한다면 JavaFX : TreeView에서 TreeItem의 인덱스를 찾는 방법은 무엇입니까?
예를 들어, 바로 "테스트 작업"후,하지만 "테스트 상태"전에 다른 TreeItem
를 추가해야합니다.
내가 요소의 추적 할 수 있도록 코드를 작성 마지막으로 선택한 :
@FXML
TreeView<String> view;
TreeItem<String> current = root;
view.selectionModelProperty().addListener(new ChangeListener<MultipleSelectionModel<TreeItem<String>>>() {
@Override
public void changed(ObservableValue<? extends MultipleSelectionModel<TreeItem<String>>> observable,
MultipleSelectionModel<TreeItem<String>> oldValue,
MultipleSelectionModel<TreeItem<String>> newValue) {
current = newValue.getSelectedItem();
}
});
그러나, TreeItem의 사용을 통해, "현재"어떤 방법 내가 찾는 데 사용할 수 있습니다 TreeView의 인덱스입니다.
root.getChildren().add(index, new TreeItem<String>(new OpenBank().getAction(), Icons.ACTION.getIcon()));
그래서 TreeView
에서 아이의 인덱스를 찾을 수있는 방법이 : 내가 할 수 있도록
이
은?
나는 이것이 깊이 1의 나무의이 특정한 상황에 대해서만 작용한다고 생각한다. 당신은 임의의 나무를 위해 그것을하는 효율적인 방법을 안다? – Eduardo
모든 레벨에서 작동해야합니다. 예를 들어, 레벨 3 리프를 선택하면 3 레벨 트리가있는 경우 새 레벨 3 리프가 추가됩니다. level2 분기를 선택하면 새로운 level2 분기가 추가됩니다. 그것이하지 않는 것 : level2 브랜치에 새로운 level3 리프를 추가하지는 않지만, 다른 기능입니다. – DVarga