Bonjour,
Je rencontre un problème de "compréhension" qui m'empêche d'avancer dans le développement de mon programme.
Le but étant à terme de pouvoir afficher une image et d'effectuer en background le calcul de l'image suivante pendant que celle qui est affichée s'anime.
Donc il s'agit en gros de :
image1 calculée > image1 s'affiche > lancement du calcul de l'image 2 (pas moins de 10 secondes de calcul) > pendant ce temps on peut se déplacer sur l'image1 en attendant que l'image2 soit calculée > calcul fini > affichage image2 > lancement du calcul de l'image3 > etc. jusqu’à la fermeture de la fenêtre par l'user.
J'ai élaboré tous les éléments nécessaires à l'affichage et au calcul d'une image, mais je ne sais pas comment réaliser cet enchaînement et suis donc coincée depuis plusieurs jours.
J'ai vu qu'il existe la classe SwingWorker mais j'ai aussi lu qu'elle ne peut être utilisée qu'une unique fois puis fermée (?).
Y aurait-il un moyen d'utiliser SwingWorker en boucle ? Ou peut-être une autre alternative avec mes propres threads ?
Si chaque image calculée est considérée comme un élément en plus dans la progression "infinie", est-il possible de passer tout un tableau 2D de la méthode doInBackground à celle qui affiche ?
J'espère que j'ai décrit assez clairement mon souciset vous remercie d'avance pour vos réponses !
Partager