Как сохранить выбор TableView в пределах временной шкалы? - PullRequest
0 голосов
/ 22 апреля 2019

Я пытаюсь сохранить свой выбор в TableView в фоновом задании временной шкалы.

Когда я устанавливаю контрольные точки, данные верны, и мой обратный вызов RowSelection срабатывает.Я использую временную шкалу, потому что я думал, что она обрабатывает обновление GUI без исключений, таких как Timers.Это мой код:

private void initializeAutoRefresh() {
    this.autoRefreshTimeline = new Timeline(new KeyFrame(Duration.seconds(10), (ActionEvent event) -> {
        if (entries != null) {
            entries.clear();
            tableOfGames.getItems().clear();
            populateGameTable(); // Done through Web Service
            System.out.println("Refreshed data.");

            if (selectedGame!= null) {
                tableOfGames.requestFocus();
                tableOfGames.getSelectionModel().select(entries.indexOf(selectedGame));
            }
        }
    }));
    this.autoRefreshTimeline.setCycleCount(Timeline.INDEFINITE);
    autoRefreshTimeline.play();
}

Выбранная строка не сохраняется после обновления.Желаемое поведение - выделение строки синим цветом, как в соглашении.Однако графический интерфейс пользователя не сохраняется после этого обновления, которое, согласно временной шкале, происходит каждые 10 секунд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...