Ĺadny brzuch
W jaki sposób zrobić, aby co sekunde Caption Labela zmieniał się z pięciu w dół.
Chodzi mi o efekt odlicznia 5,4,3,2,1,0...
komponent timer i w zdarzeniu on timer dajesz odliczanie. Przed odliczaniem sprawdzasz, czy jeszcze nie ma zera. Jak jest, to zatrzymujesz timer. Napisac kod ?
Potem w "interval" ustawiasz odstęp w mili sekundach...
1000 milisekund to sekunda, tak dla formalności :D
W jaki sposób zrobić, aby co sekunde Caption Labela zmieniał się z pięciu w dół.
Chodzi mi o efekt odlicznia 5,4,3,2,1,0...
Feration Twoje nie działa :huh: .var Form1: TForm1; i:integer; //koniecznie tutaj trzeba zadeklarować implementation {$R *.dfm} procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption:=inttostr(i); i:=i-1; if i<0 then Timer1.Enabled:=false; end; procedure TForm1.Button1Click(Sender: TObject); begin i:=5; timer1.Enabled := true; end; To już działa :P .
Użytkownik Maciek J. edytował ten post 14 luty 2006, 14:37
Feratoin, twoje jest beznadziejne :P
\Za dużo zman, jak chcemy dodać odliczanie :P
O loool, ustawiasz wartość labela na "10", w timerze o interval 1000 piszesz:procedure TForm1.Timer1Timer(Sender: TObject); var i:integer; begin try i:=strtoint(Label1.Caption); except Label1.Caption:='10'; end; Label1.Caption:=inttostr(i-1); Timer1.Enabled:=i<>1; end;
For i := strtoint(label1.caption) downto 0 do label1.caption:=inttostr(i);
i to integer, a w labelu musi być liczba. I po co tu się głowić :P
For i := strtoint(label1.caption) downto 0 do label1.caption:=inttostr(i);
i to integer, a w labelu musi być liczba. I po co tu się głowić :P Nie sprawdziłeś tego nawet... :P Jak już to:var i, c:integer; begin For i := strtoint(label1.caption)-1 downto 0 do begin c:=gettickcount; while gettickcount-c<1000 do Application.ProcessMessages; label1.caption:=inttostr(i); end; end;
Nie sprawdziłeś tego nawet... :P Jak już to:var i, c:integer; begin For i := strtoint(label1.caption)-1 downto 0 do begin c:=gettickcount; while gettickcount-c<1000 do Application.ProcessMessages; label1.caption:=inttostr(i); end; end;
Feratoina nie dziala bo I trzeba dac w var globalne :P
Ludzie!! Jak chcecie odliczac to dawajcie wszystko w var globalne :P :D
Użytkownik Shooter edytował ten post 16 luty 2006, 21:48
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Chodzi mi o efekt odlicznia 5,4,3,2,1,0...
komponent timer i w zdarzeniu on timer dajesz odliczanie. Przed odliczaniem sprawdzasz, czy jeszcze nie ma zera. Jak jest, to zatrzymujesz timer. Napisac kod ?
Potem w "interval" ustawiasz odstęp w mili sekundach...
1000 milisekund to sekunda, tak dla formalności :D
W jaki sposób zrobić, aby co sekunde Caption Labela zmieniał się z pięciu w dół.
Chodzi mi o efekt odlicznia 5,4,3,2,1,0...

Feration Twoje nie działa :huh: .var Form1: TForm1; i:integer; //koniecznie tutaj trzeba zadeklarować implementation {$R *.dfm} procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption:=inttostr(i); i:=i-1; if i<0 then Timer1.Enabled:=false; end; procedure TForm1.Button1Click(Sender: TObject); begin i:=5; timer1.Enabled := true; end; To już działa :P .
Użytkownik Maciek J. edytował ten post 14 luty 2006, 14:37
Feratoin, twoje jest beznadziejne :P
\Za dużo zman, jak chcemy dodać odliczanie :P
O loool, ustawiasz wartość labela na "10", w timerze o interval 1000 piszesz:procedure TForm1.Timer1Timer(Sender: TObject); var i:integer; begin try i:=strtoint(Label1.Caption); except Label1.Caption:='10'; end; Label1.Caption:=inttostr(i-1); Timer1.Enabled:=i<>1; end;
For i := strtoint(label1.caption) downto 0 do label1.caption:=inttostr(i);
i to integer, a w labelu musi być liczba. I po co tu się głowić :P
For i := strtoint(label1.caption) downto 0 do label1.caption:=inttostr(i);
i to integer, a w labelu musi być liczba. I po co tu się głowić :P Nie sprawdziłeś tego nawet... :P Jak już to:var i, c:integer; begin For i := strtoint(label1.caption)-1 downto 0 do begin c:=gettickcount; while gettickcount-c<1000 do Application.ProcessMessages; label1.caption:=inttostr(i); end; end;
Nie sprawdziłeś tego nawet... :P Jak już to:var i, c:integer; begin For i := strtoint(label1.caption)-1 downto 0 do begin c:=gettickcount; while gettickcount-c<1000 do Application.ProcessMessages; label1.caption:=inttostr(i); end; end;

Feratoina nie dziala bo I trzeba dac w var globalne :P
Ludzie!! Jak chcecie odliczac to dawajcie wszystko w var globalne :P :D
Użytkownik Shooter edytował ten post 16 luty 2006, 21:48