Utiliser progressbar dans un while

Résolu
Signaler
Messages postés
77
Date d'inscription
mercredi 5 avril 2006
Statut
Membre
Dernière intervention
9 mai 2006
-
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
-
Mon programme est du type while(nombre < >0) do , en sachant que nombre vaut 15 puis est decrementer de 1 a chaque fois
J'aimerais utiliser un progressbar qui se remplisse jusqu'à ce que nombre est la valeur 0

4 réponses

Messages postés
3826
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
10 mai 2021
46
Salut,

Dans l'inspecteur d'objet tu mets Min à -15 et Max à 0

procedure TFrmMain.Button1Click(Sender: TObject);
Var Nombre :Integer;
begin
//ProgressBar1.Min := -15;
//ProgressBar1.Max := 0;
Nombre := 15;
While Nombre <> 0 do
Begin
ProgressBar1.Position : = -Nombre; // affiche la position
Dec(Nombre);
Sleep(50); // pour voir la progression
End;
ProgressBar1.Position := -Nombre; // affiche encore la derniere position
end;

@+
Cirec
Messages postés
16
Date d'inscription
jeudi 5 février 2004
Statut
Membre
Dernière intervention
31 mai 2006

While (nombre <> 0) Do ProgressBar.Position := 100 - nombre * 100/15;
Messages postés
77
Date d'inscription
mercredi 5 avril 2006
Statut
Membre
Dernière intervention
9 mai 2006

merci
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
12
salut,

comme on ne peut pas faire Dec( progressbar1.Position) encore plus simple:

procedure TForm1.Button1Click(Sender: TObject);

begin

while progressbar1.Position>0 do //(que tu peux remplacer par while progressbar1.Position>max do

begin

progressbar1.Position:=progressbar1.Position-1;

sleep(100);//pour avoir le temps de voir

end;

end;



@+

jlen