Utiliser progressbar dans un while

Résolu
didi59650 Messages postés 77 Date d'inscription mercredi 5 avril 2006 Statut Membre Dernière intervention 9 mai 2006 - 19 avril 2006 à 11:45
jlen100 Messages postés 1606 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 25 juillet 2014 - 19 avril 2006 à 13:30
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

Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
19 avril 2006 à 12:24
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
3
maxpiton4D Messages postés 16 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 31 mai 2006
19 avril 2006 à 11:58
While (nombre <> 0) Do ProgressBar.Position := 100 - nombre * 100/15;
0
didi59650 Messages postés 77 Date d'inscription mercredi 5 avril 2006 Statut Membre Dernière intervention 9 mai 2006
19 avril 2006 à 13:27
merci
0
jlen100 Messages postés 1606 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 25 juillet 2014 13
19 avril 2006 à 13:30
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
0
Rejoignez-nous