Bonjour, j'ai un problème bizarre mais c'est sans doute moi.

J'ouvre de ma fenêtre principale une sous fenêtre par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
            # Ouverture de la fenêtre de téléchargement avec la liste des fichiers
            window_telechargement = fenTelechargement(listeFichiers)
            # Pour récupérer les infos de téléchargement
            window_telechargement.signal_fermeturefenTelechargement.connect(self.RetourTelechargement)
            # Affichage de la fenêtre
            window_telechargement.exec_()
La fenêtre s'ouvre

Dans la fenêtre (une QDialog) dans l'_init_ j'ai

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
    def __init__(self, Message, parent=None):
        super(fenTelechargement, self).__init__(parent)
        self.setupUi(self)
        # Récup de la liste des fichiers à télécharger
        self.listeFichiers = Message
        #*Init des connect boutons
        self.initControles()
        #*Lancement du téléchargement
        self.telechargerFichiers()
        #*On ferme la fenêtre
        self.Quitter()
et dans self.Quitter j'ai

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
    def Quitter(self):
        # On emet le signal "signal_fermeturefenTelechargement()" avec la liste des résultats de téléchargement des fichiers
        self.signal_fermeturefenTelechargement.emit(self.resultatsTelechargements)
        # fermer la fenêtre
        self.close()
J'ai un bouton dans cette fenêtre et lorsque je clique dessus ça lance Quitter() et la fenêtre se ferme mais je voudrais que le traitement self.telechargerFichiers() s'effectue (ce qu'il fait très bien) et que la fenêtre se ferme seule.

Il semble que la fenêtre principale reçoive bien le signal signal_fermeturefenTelechargement lorsque l'on arrive à la fin de l'_init_ et j'ai vérifié ça lance bien Quitter() envoie bien le signal_fermeturefenTelechargement mais arrivé sur la ligne de self.close() rien ne se passe.
Ensuite je clique sur le bouton de fermeture qui exécute la même procédure de fermeture (Quitter()) et la ça envoie a nouveau le signal signal_fermeturefenTelechargement et cette fois ci ça ferme.

Pourquoi l'exécution de la procédure de sortie Quitter() ne fonctionne pas totalement lorsqu'elle est lancée de l'init alors que ça roule à partir du bouton.

C'est l'init le problème ? je ne peut pas fermer à partir du moment ou il n'est pas terminé ? c'est compréhensible mais alors comment lancer une procédure automatique à l'ouverture de la fenêtre et qu'elle se ferme ensuite sans intervention humaine ?

Je suis preneur de toute info surtout d'ailleurs pour ma propre éducation car le je ne trouve pas comment contourner le problème.

Merci