Bonjour,
J'execute une requête SQL dbExpress avec Oracle qui dure relativement longtemps. Pour faire patienter l'utilisateur qui peut alors avoir tendance à cliquer n'importe où croyant que le processus est bloqué, j'ai déposé un composant ProgressBar qui devrait évoluer en même temps que le traitement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
		for (qPatients->First();!qPatients->Eof;qPatients->Next()) {
			pbPatients->Position++;
			pbPatients->Repaint();
			TfrDispense *item=new TfrDispense(sbPatients);
			item->Parent=sbPatients;
			item->Name="patients"+String(lig);
			item->Top=lig; item->Left=0;
			item->Width=1020; item->Height=26;
			item->IdPat=qPatients->FieldByName("ID_PAT")->AsInteger;
			item->IdPresc=qPatients->FieldByName("ID_PRESC")->AsInteger;
			item->IdMedic=qPatients->FieldByName("ID_MEDIC")->AsInteger;
Malheureusement au bout de quelques secondes tout se fige y compris ma barre de progression (pbPatients) et le caption de la fenêtre indique même Ne répond pas).
Quelqu'un aurait une idée ? J'ai essayé avec un Timer alors là c'est encore mieux il n'y va pas du tout pendant le traitement.

Merci d'avance de vos réponses.