javafx Avanzamento automatico


Esempio

Pagination p = new Pagination(10);

Timeline fiveSecondsWonder = new Timeline(new KeyFrame(Duration.seconds(5), event -> {
    int pos = (p.getCurrentPageIndex()+1) % p.getPageCount();
    p.setCurrentPageIndex(pos);
}));
fiveSecondsWonder.setCycleCount(Timeline.INDEFINITE);
fiveSecondsWonder.play();

stage.setScene(new Scene(p));
stage.show();

Questo fa avanzare l'impaginazione ogni 5 secondi.

Come funziona

Pagination p = new Pagination(10);

Timeline fiveSecondsWonder = new Timeline(new KeyFrame(Duration.seconds(5), event -> {

fiveSecondsWonder è una sequenza temporale che fiveSecondsWonder un evento ogni volta che termina un ciclo. In questo caso il tempo di ciclo è di 5 secondi.

    int pos = (p.getCurrentPageIndex()+1) % p.getPageCount();
    p.setCurrentPageIndex(pos);

Spunta l'impaginazione.

}));
fiveSecondsWonder.setCycleCount(Timeline.INDEFINITE);

Imposta la sequenza temporale per l'esecuzione per sempre.

fiveSecondsWonder.play();