Hello,
J'ai une Jframe assez longue à construire (disons 2 secondes).
Lorsque j'associe sa création à une action (un bouton par ex), l'IHM freeze pendant 2 secondes, donc.
Ma question est la suivante:
Est ce une bonne pratique d'instancier la JFrame dans la méthode doInBackground (donc pas de freeze de 2 sec), bien que cela soit un objet graphique qui hérite de JFrame, et qui donc devrait etre dans le done() ?
Questions subsidiaires:
Que se passe-t-il concretement si j'instancie une JFrame dans doInBackground ? Y a t il risque de bug d'affichage vu que c'est pas dans l'EDT ? Swing est il assez "malin" pour détecter qu'il faut afficher la frame, bien que ce ne soit pas a priori dans le thread d'affichage ?
J'aurai tendance à répondre oui à la derniere question vu que je l'ai testé et que ca s'affiche correctement, sans freeze ni bug bizarre, mais est-ce à faire ?
Je crains que la best practive m'incite a freezer mon IHM le temps de l'instanciation. Bien sûr la creation de frame n'est peut etre pas optimale, mais je dois faire avec.
Merci d'avance pour vos reponses







Répondre avec citation





Partager