Hello i have this code to display images with javafx
public  void CantaCarta() throws InterruptedException {
            startGame.setDisable(true);
                Timer timer = new Timer();
            timer.scheduleAtFixedRate(new TimerTask() {
                @Override
                public void run() {
                    SwingUtilities.invokeLater(() -> {
                        for (int x=1; x<55;x++){
                            Image image = new Image(getClass().getResource("imgs/"+JuegoLoto.Muestra(x-1)+".jpg").toString(), true);
                            cantada.setImage(image);
                            if (x >= 54) {
                                System.out.print("Termina");
                                timer.cancel();
                            }  else {
                                System.out.print(" "+x+" ");
                                try {
                                    Thread.sleep(200);
                                } catch (InterruptedException ex) {
                                }
                            }
                        }
                    });
                }
            }, 0, 1000);
     }
The images will displa correctly but when the image number 54 is in the screen it will be back to 1 in a loop all because of this
 Thread.sleep(200);
How can i solve this? i want to delay the time beetween images
 
     
    