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
Partager