Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
delphi7 de timer sayma suresini labelde gosterme
#1
arkadaslar timer degerini 5000 yaptim
 5sn sonra islemi yapiyor 

yapmak istedigim timer aktif oldugunda 0 dan 5000 e kadar saymasini labelde gorebilirmiyiz
saygilar

yapmak istedigim seyi 2 timer ile yaptim bu kadar koda gerek kalmadan timer sayma tick ini okuyamiyormuyuz
  say:integer=0;
implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label2.Caption:=IntToStr( Timer1.Interval);
Timer1.Enabled:=false;

end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
if Timer1.Enabled=True then
                      begin
                      say:=say+1;
                      Label1.Caption:=IntToStr(say);
                      end;
if Timer1.Enabled=false then Timer2.Enabled:=false;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=true;
Timer2.Enabled:=true;
say:=0;
Label1.Caption:='0';
Label2.Caption:='-';
end;
Ekmeğimi yazılımdan kazanmıyorum kendi halimde bir şeyler yapıyorum. 49 yaşında emekliyim.
İğne sokmadan yardımcı olacaksan başımın üstünde yerin var.

Cevapla
#2
5000 yerine 1 girin tick degerini. 5000 defa tetiklendiginde durdurun.
Cevapla
#3
Bu tarz işlemlerde birer birer artırma işlemi size doğru sonuçlar vermeyecektir. 5 saniye içerisinde saydırma ve 5000 'e kadar saydırma farklı çözünürlülükte olacaktır. Timer üzerinden aşağıdaki kod örneği işinizi görecektir diye umuyorum. Timer1.Interval değeri 1 olarak ayarlanmıştır. Bu değerin 1..100 arasında değişmesi, sayıların Label kontrolü üzerinden daha kalıcı görünmesini sağlayabilir.

procedure TForm1.Button1Click(Sender: TObject);
begin
 if not Timer1.Enabled then
   Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
{$J+}
const
 StartTime: Integer = 0;
begin
 if StartTime = 0 then
   StartTime := GetTickCount;

 if GetTickCount < (StartTime + 5000) then
   Label1.Caption := IntToStr(GetTickCount - StartTime)
 else
 begin
   Timer1.Enabled := False;
   StartTime := 0;
   Label1.Caption := '0';
 end;
end;
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  kod timer icinde bir kere islesin sadikacar60 5 302 30-04-2024, Saat: 17:22
Son Yorum: sadikacar60
  timer kullanimi hakkinda sadikacar60 11 538 28-04-2024, Saat: 19:33
Son Yorum: sadikacar60
  Klasör İçindeki Resimleri Gösterme sadoal351 5 489 13-04-2024, Saat: 22:40
Son Yorum: sadoal351
  Arapça Yazı Gösterme baloglurecep 9 4.654 28-02-2023, Saat: 16:31
Son Yorum: themerdogan
  Fast Report'da HTML Gösterme Hk. pro_imaj 4 1.038 10-10-2022, Saat: 11:24
Son Yorum: pro_imaj



Konuyu Okuyanlar: 1 Ziyaretçi