Java FX - Bouton reset

Mulotwo - 12 mai 2023 à 10:40
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 12 mai 2023 à 13:18

Bonjour à tous,

Je m apprête à commencer un projet de développement d IHM et après études de différents langages, Java Fx m a semblé le plus adapté à mes besoins. Toutefois, j aimerais savoir s il est possible de coder un bouton reset, je m explique en situation :

Admettons que l utilisateur active un bouton qui déclanche un calcul, peut il activer un bouton reset qui stoppe le calcul, même si ce dernier était toujours en cours de calcul ?

J ai lu qu on pouvait manipuler la boucle événementiel avec des filtres et une méthode consume() mais ne suis pas sûr qu on puisse arrêter un événement en cours de calcul.

Merci d avance, j espère que le message est compréhensible !

Cordialement,


Android / Chrome 112.0.0.0

A voir également:

2 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
12 mai 2023 à 10:57

Bonjour,

Pour un évènement long il faut déclencher une tâche en arrière plan et rendre la main sinon la fenêtre va freezer.

Une fois que l'événement a rendu la main tu pourras prendre en considération d'autres événements, par exemple un évènement d'annulation.

Pour la tâche en arrière plan, tu ne pourras pas l'annuler de l'extérieur, il faudra prévoir un mécanisme interne à la tâche qui contrôle de temps en temps si l'annulation a été demandée et qui coupe la tâche proprement.

Dans ton cas, on pourrait très bien imaginer que l'arrêt de la tâche pourrait enregistrer le résultat partiel du calcul pour pouvoir le reprendre ultérieurement et éviter de tout perdre.


1

Merci de votre réponse très rapide !

C'est exactement mon cas, je souhaite que l utilisateur puisse annuler le calcul en cours, tant en sauvegardant les résultats partiels. Pourriez vous me donner qq termes techniques (nom méthodes, technique de déclenchement en arrière plan), pour que je puisse effectuer mes propres recherches maintenant que je sais que cela est possible.

Encore merci pour votre réponse claire et rapide ! ????

0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
12 mai 2023 à 13:18

Tu peux regarder ce tutoriel pour commencer.

https://fabrice-bouye.developpez.com/tutoriels/javafx/gui-service-tache-de-fond-thread-javafx/

Attention : ce tutoriel date de 2015 et fait référence aux versions Java 7/8 et Java FX 8, dans les grandes lignes c'est toujours être valable, mais pour compléter tes recherches il faut penser à se documenter sur les versions que tu utilises, les dernières étant Java 20 et Java FX 20.

1