Javafx 2 如何保持TableView';当焦点丢失时,选择什么?

Javafx 2 如何保持TableView';当焦点丢失时,选择什么?,javafx-2,Javafx 2,当焦点丢失到窗口时,如何保留TableView的选择 当窗口的焦点丢失时,所选项目仍在窗口中可见地被选中;但是,我无法找到从其控制器访问选定对象的方法 我尝试过使用TableView的方法getSelectionModel().selectedItemProperty().get()和getSelectionModel().getSelectedItem(),但如果窗口和/或表的焦点丢失,这两种方法都会返回null。使用一个变量并在更改侦听器中设置它。我使用标签进行调试 table.ge

当焦点丢失到窗口时,如何保留TableView的选择

当窗口的焦点丢失时,所选项目仍在窗口中可见地被选中;但是,我无法找到从其控制器访问选定对象的方法


我尝试过使用TableView的方法
getSelectionModel().selectedItemProperty().get()
getSelectionModel().getSelectedItem()
,但如果窗口和/或表的焦点丢失,这两种方法都会返回
null

使用一个变量并在更改侦听器中设置它。我使用标签进行调试

    table.getSelectionModel().getSelectedCells().addListener(new ListChangeListener<TablePosition>() {
        @Override
        public void onChanged(ListChangeListener.Change<? extends TablePosition> c) {
            label1.setText(String.valueOf(c.getList().get(0).getRow()));
        }
    });
table.getSelectionModel().getSelectedCells().addListener(新ListChangeListener()){
@凌驾

public void onChanged(ListChangeListener.ChangeThank,它工作得很好。我想知道我是否必须这样做,但不知道怎么做。
    table.getSelectionModel().getSelectedCells().addListener((ListChangeListener.Change<? extends TablePosition> c) -> {
        label1.setText(String.valueOf(c.getList().get(0).getRow()));
    });