嗨,我正在尝试将重点放在列表 View 中的项目上。用户打开文件后,该项目将添加到列表 View 中,但是我遇到的问题是列表 View 未将焦点设置在添加的新项目上。我必须单击列表 View 中的项目以将焦点设置为该项目。有没有一种方法可以让Listview立即在JavaFX 2.1中突出显示新添加的项目。

最佳答案

假设新添加的项目的索引为N
选择它:

listView.getSelectionModel().select(N);

专注于它:
listView.getFocusModel().focus(N);

滚动到它:
listView.scrollTo(N);

您可以使用这些的组合,最好在Platform.runLater()中使用。
滚动然后选择:
Platform.runLater(new Runnable() {

    @Override
    public void run() {
        listView.scrollTo(N);
        listView.getSelectionModel().select(N);
    }
});

07-24 18:58
查看更多