Bonjour � tous,
mon probl�me est le suivant: j'ai une fen�tre contenant une TProgressBar, qui appelle une classe ind�pendante qui fait un calcul assez long (import d'un fichier Excel d'une longueur connue): je peux donc, dans ma classe d'import, connaitre la proportion de temps qu'il me reste pour finir l'import. J'essaie donc de mettre � jour la progressBar de la fen�tre, mais �a ne fonctionne pas. Dans mon code, lors de l'appel de ma fonction de classe d'import depuis la fen�tre (lors d'un click), j'envoi le pointeur vers la TProgressBar, que j'utilise dans la classe pour la mettre � jour. Or, la progressBar ne bouge pas � l'�cran. Alors que j'ai pris soin d'ajouter des lignes de raffraichissement juste apr�s la modification de la position: refresh(), repaint() et m�me Application->ProcessMessages()
Ce qui est bizarre, c'est que lorsque j'affiche, avec un MessageBox, la valeur de progress->Position, j'ai la bonne valeur!

Voici un extrait du 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
17
 
/**** dans la fenetre ****/
TProgressBar* progress;
obj->loadFile(filename, progress);
 
/**** dans la classe ****/
void loadFile(AnsiString filename, TProgressBar* progress){
  progress->Min = 0;
  progress->Max = 100;
  for (int i=0; i<100; i++){
    // import excel
    progress->Position = i;
    progress->Refresh();
    progress->Repaint();
    Application->ProcessMessages();
  }
}
Merci de vos id�es et suggestions!
A bientot

Benz