Bonjour à tous,
Je suis débutant en JavaFX et j'essaye de créer un chronomètre qui démarre à partir du moment ou on appuie sur un bouton.
Pour le moment, je veux juste faire en sorte qu'il aille jusqu'à 60 secondes.
J'ai essayé plusieurs méthodes sans réussite malgré mes recherches. Avec mon code, quand j'appuie sur le bouton, le text de mon label ne se met pas à jour.
(J'arrive à les afficher dans la console Eclipse bien évidemment, mais mon programme plante dès que j'essaie de l'afficher dans ma fenêtre).
Je vous partage mon code,
Merci d'avance pour vos réponses.
Bonne soirée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 package chrono; import javafx.application.Application ; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.control.Button; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class MainApp extends Application{ private int secondes = 0; public void start (Stage primaryStage) throws Exception{ primaryStage.setTitle("Mon chronomètre"); VBox root = new VBox() ; Label label = new Label("Temps :"); Button boutonTemps = new Button("Lancer le chrono"); boutonTemps.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent e) { System.out.println("Bouton activé"); while (secondes < 60) { label.setText("Temps :"+secondes+"s"); try { Thread.sleep(1000); } catch (InterruptedException z) { } secondes++; } } }); root.getChildren().add(label); root.getChildren().add(boutonTemps); Scene scene = new Scene (root, 600,400); primaryStage.setScene(scene); primaryStage.show(); } }
Partager