Bonjour,
depuis quelques temps je manipule des QThread (fort pratique!) mais aujourd'hui je bloque sur un problème d'architecture je pense.
j'ai une interface graphique assez "lourde" (des onglets embarquant chacun bien des widgets et des graphiques).
quand je lance l'interface globale j'ai environ 10 secondes de "chargement" initial et j'aimerais que pendant ce chargement, une jolie image avec une succession de texte puisse s'afficher histoire de faire patienter l'utilisateur (un peu comme quand on lance Spyder et qu'on voit une toile d'arraignée).
mon idée initiale était de simplement demander l'affichage d'un QLabel personnalisé au début de ma classe MainWindow (via un show())... et de le supprimer (avec un hide())une fois que tous les objets sont chargés (juste avant le "show" de ma MainWindow).
problème: le label apparait bien mais le chargement de la photo et son rafraichissement n'intervient qu'à la fin du chargement de la MainWindow (y compris avec un repaint()).
par la suite j'ai pensé basculer l'affichage du Label dans un QThread... mais le même problème se pose.
En fait, j'ai l'impression que le QThread fait bien tout ce que je veux mais qu'une fois qu'il est contenu dans un objet pleinement chargé... sans quoi, il attend la fin du chargement du main avant de gérer les évènements.
Du coup, je m'interroge sur la structure globale que je dois viser?? Thread ou pas? comment le/les imbriqué(s)?
merci pour vos conseils!
Partager