当一个listViews被按下/聚焦时,我想将焦点放在两个不同listViews中的同一行上。下面的例子


Correct Display

这就是目前发生的情况


Present Display

//Initialize Left and Right ListViews
ListView<String> listViewLeft = new ListView<String>();
ListView<String> listViewRight = new ListView<String>();

//Set focus properties here


任何提示将非常感谢。

最佳答案

你可以做

listViewLeft.getSelectionModel().getSelectedIndices().addListener((Change<? extends Integer> c) -> {
    listViewRight.getSelectionModel().clearSelection();
    for (int selected : listViewLeft.getSelectionModel().getSelectedIndices()) {
        listViewRight.select(selected);
    }
});
listViewRight.getSelectionModel().getSelectedIndices().addListener((Change<? extends Integer> c) -> {
    listViewLeft.getSelectionModel().clearSelection();
    for (int selected : listViewRight.getSelectionModel().getSelectedIndices()) {
        listViewLeft.select(selected);
    }
});


但是也许您真的想要一个带有两列而不是两个列表视图的TableView吗?

07-28 01:00