Bonsoir a tous,

J'ai cr�� un petit programme qui d�place automatiquement une liste de fichiers d'un repertoire vers un autre. Pour savoir ou on en est dans la progression, j'y ai ajout� une petite progressbar que j'incremente a chaque nouveau fichier trait�. Tout fonctionne parfaitement tant que je ne bouge pas la souris et que je ne clic pas. Mais d�s que je clic ailleurs, la barre de progression ne bouge plus et l'intitul� de la fenetre contient: "ne repond pas".

voici le code de la methode incrimin�e:
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
	pnlImg->Visible = true;
	pbCopyFile->Position = 0;
	mainForm->Refresh();
	int pas = 100 / getNbSelected(lstFilmsRecup);
	for(int i=lstFilmsRecup->Items->Count-1; i>=0; i--)
	{
		if( lstFilmsRecup->Checked[i] )
		{
			pbCopyFile->Position += pas;
			AnsiString file = lstFilmsRecup->Items->Strings[i].SubString(lstFilmsRecup->Items->Strings[i].LastDelimiter("\\")+1,lstFilmsRecup->Items->Strings[i].Length());
 
			if( !CopyFile(lstFilmsRecup->Items->Strings[i].c_str(),(edtBrowseDest->Text+"\\"+file).c_str(),true))
				MessageDlg("Problème à la copie du fichier: "+lstFilmsRecup->Items->Strings[i], mtWarning, TMsgDlgButtons() << mbOK, 0);
			else
			{
				int j = findFile((AnsiString) lstFilmsRecup->Items->Strings[i]);
				if(j!=-1)
				{
					_vLstRecup[j].users += ";"+edtPseudo->Text;
					lstFilmsRecup->Items->Delete(i);
				}
				else
				{
					Fichier f;
					f.fichier = lstFilmsRecup->Items->Strings[i];
					f.users = edtPseudo->Text;
					_vLstRecup.push_back(f);
					lstFilmsRecup->Items->Delete(i);
				}
			}
		}
		Application->ProcessMessages();
	}
	pnlImg->Visible = false;
	saveListeFichiers();
 
	videOngletSuppr();