Bonjour à tous,

j'ai un problème avec une barre de progression.
J'ai un programme qui ouvre une nouvelle fenêtre pour envoyer des fichiers sur un serveur. J'utilise une progressBar pour voir l'avancement du téléchargement.

Si l’appuie sur le bouton "envoyer" et que je ne touche plus à rien, la barre de progression se charger correctement.
Par contre si je clique quelque part sur la fenêtre pendant qu'il télécharge mes fichiers, pas forcément sur un bouton même si je clique simplement sur le fond ou le bord de ma fenêtre, le programme ne répond plus et ma fenêtre devient toute blanche jusqu’à ce que tous les fichiers ont été envoyé sur le serveur.

En faite le programme ne répond plus, mais derrière il continue son traitement, une fois le traitement terminer, le programme répond à nouveau.

Voila un exemple de mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
 
// code de ma progressBar
progressBar = new QProgressBar(tab_2);
progressBar->setObjectName(QString::fromUtf8("progressBar"));
progressBar->setGeometry(QRect(190, 340, 371, 21));
progressBar->setValue(0);
 
 
// code pour le chargement de la progressBar
for(boost::filesystem::directory_iterator it(directory); it != boost::filesystem::directory_iterator(); ++it) // pour chaque fichier de mon répertoire
{
	uploadFile();                                   // on upload le fichier sur le serveur
	percent += 10;
	progressBar->setValue(percent); // on augmente le chargement
}
PS: je lance ma fenêtre avec la fonction exec(), donc je pense que je suis bien en mode Modal.


Merci pour votre aide