Avatar billede stone Forsker
26. april 2000 - 19:48 Der er 11 kommentarer og
1 løsning

progressbar

hvordan får får man en progressbar til at virke.
til en joke skal jeg bruge en progressbar,når den er færdig skal den åbne en form.
Avatar billede trolle Nybegynder
26. april 2000 - 20:05 #1
I en progressbar er der to ting, som du skal bruge for at få den til at virke:
step
og
Avatar billede trolle Nybegynder
26. april 2000 - 20:15 #2
UNDSKYLD FORKERT TAST!!!! jeg prøver lige forfra:

I en progressbar er der to ting, som du skal bruge for at få den til at virke:
STEP  og  MAX.
Ligeså snart dit program starter er din progressbar på "0"... dvs. at stregen eller hvad det nu er ikke har flyttet sig...
Du kan nu skrive f.eks.
progressbar1.step;  Dette gør at din progressbar's værdi bliver lig den som den havde før + den værdi som der er i step (defoult 10)...
Ligeså snart din progressbar's værdi har nået MAX  så er stregen i denne også nået til den anden ende...

Til dit problem ville jeg forestillle mig at det er nemmest at lave en while-løkke, som tæller en given variable op(eks. 10000 gange)
Inde i løkken Laver du så kommandoen
progressbar.step
Hvor din step værdi er lig 1.
Din Max værdi kan du så sætte til at være lig 10000. og derved når løkken er løbet igennem 10000 gange, så er progressbarem nået til den anden ende...
Efter løkken kan du så kalde den nye form på normal vis...
Avatar billede trolle Nybegynder
26. april 2000 - 20:16 #3
Undskyld latterlige stave og taste fejl... håber det kan læses alligevel...
Avatar billede retep Nybegynder
26. april 2000 - 21:42 #4
Her er koden til en løsning. Det ser lidt anderledes ud end det der forklares ovenover ;)

procedure TForm1.Button1Click(Sender: TObject);
Var
I:integer;
begin

for i := 1 to 100 do
begin
  progressbar1.StepIt;
  Sleep(50);
end;

form2.show;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  progressbar1.step := 1;
  progressbar.max := 100;
end;

Mvh
Retep
Avatar billede retep Nybegynder
26. april 2000 - 21:51 #5
Det der står i formen's create er properties, der kan ændres/sættes i objekt-inspektoren. Og selvfølgelig burde der stå progressbar1.max;

Mvh
Retep :)



Avatar billede stone Forsker
27. april 2000 - 21:14 #6
retep:
hvordan får man progressbar til at starte når formen åbnes.
kan e.v.t. smide ekstra point på!
Avatar billede retep Nybegynder
27. april 2000 - 22:36 #7
Sad selv og rodede lidt med det før jeg svarede... Det drillede ret meget... Jeg ville nok starte en timer i createn, lade den køre i 5 sekunder, og lade dens event starte progressbaren.

Skriver lige om lidt :)

Skal lige have noget at spise...
Avatar billede retep Nybegynder
27. april 2000 - 22:52 #8
Så virker det...

procedure TForm1.FormCreate(Sender: TObject);
begin
  progressbar1.step := 1;
  progressbar1.max := 100;
  timer1.Interval := 3000;
  timer1.Enabled := true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
Var
I:integer;
Begin
timer1.Enabled := false;
for i := 1 to 100 do
begin
  progressbar1.StepIt;
  Sleep(50);
end;
form2.show;
end;

Mvh
Retep :)
Avatar billede retep Nybegynder
27. april 2000 - 22:53 #9
Nu ved jeg ikke om du har prøvet at bruge timer før, men det er også en komponent du skal trække ind på formen. Den ligger under fanebladet 'System'.
Avatar billede retep Nybegynder
27. april 2000 - 22:54 #10
Aargh, det jeg ville skrive var at du kommer ind til dens timer-event ved at dobbeltklikke på den :)
Avatar billede retep Nybegynder
27. april 2000 - 22:59 #11
Du kan også tilføje

form1.hide;

efter

form2.show;

hvis du vil gemme form1.

Så skal du bare bruge

application.terminate;

fra form2 til at lukke programmet...

Mvh
Retep
Avatar billede stone Forsker
28. april 2000 - 20:02 #12
lige det jeg skulle bruge (tak)
laver lige et spørgsmål(ekstra point til retep)


Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester