JavaFX:如何在TreeView更新后重新选择TreeItem?

时间:2015-05-28 09:45:50

标签: javafx treeview javafx-8 selecteditem selectedindex

我想更新我的TreeView。在它之前我想保存选定的TreeItem,并在更新后自动选择它。但是当选择的TreeItem消失时,必须选择NULL TreeItem。

计时器:

Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                Platform.runLater(() ->{
                    updateUsbDeviceTreeView();
                });
            }
        }, 5000, 5000);

计时器任务功能:

private void updateUsbDeviceTreeView() {
    TreeItem<UsbDevice> usbDeviceTreeItem = usbDeviceTreeView.getSelectionModel().getSelectedItem();
    /////
        .....updating TreeView......
    /////
    usbDeviceTreeView.getSelectionModel().select(usbDeviceTreeItem);
}

但我遇到了麻烦 - 如果以前选择的TreeItem消失,将选择具有与前一个具有相同ItemIndex的TreeItem。

那么,这个不良的TreeView有什么问题?

0 个答案:

没有答案