Timer Geri Sayım

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Timer Geri Sayım

Mesaj gönderen brs »

İyi akşamlar;


Timerde geri sayım yapmak istiyorum

Örnek 1 : SpinEdit deki 60000 sayısını caption da kalan süreyi 60 sayiye olarak geri sayım nasıl başlata bilirim?
Örnek 2 : SpinEdit deki 12000 sayısını caption da kalan süreyi 120 sayiye.


:lol: Mutlaka Basit birşey ama gecenin bu saatinde çözemedim...
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Senat0r
Üye
Mesajlar: 80
Kayıt: 13 Tem 2014 09:30
Konum: Antalya

Re: Timer Geri Sayım

Mesaj gönderen Senat0r »

Kod: Tümünü seç

var
saniye,salise :Integer;
begin
        dec(zaman); //  Zaman değişkeni global bir değişkendir.
        saniye := (zaman div 10);
        salise := (zaman mod 10);
        panel1.Caption := Inttostr(saniye)+'.'+Inttostr(salise);
end;
Bu şekilde bişey işini görür sanırım hayırlı geceler.
gideceği limanı bilmeyen gemiye hiçbir rüzgar yardım edemez...

Kod: Tümünü seç

Delete from hayat where cins="çıkarcılar"
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Timer Geri Sayım

Mesaj gönderen brs »

Bu arada Timere SpinEdit den gelen değer 1000 fakat timer bu 1000 değerini bir saniye olarak algılamıyor süre çok yavaş ilerliyor neden acaba?

Kod: Tümünü seç

Timer.Interval := StrToInt(SpinEdit1.Text);
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Timer Geri Sayım

Mesaj gönderen mrmarman »

Örnek proje bu mesaj ekinde.

Kod: Tümünü seç

USES DateUtils;

Var
  xGeriSay : Integer; // Saniye
  xBasZaman, xZaman : TDateTime;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  if NOT Timer1.Enabled then
  begin
    BitBtn1.Caption := 'DURDUR';
    Timer1.Interval := 1000;
    xBasZaman       := Now;
    xZaman          := xBasZaman;
    xGeriSay        := SpinEdit1.Value;
    Timer1.Enabled  := True;
    Caption := Format('%d/%d', [ xGeriSay - SecondsBetween(xBasZaman, xZaman), xGeriSay ]);
  end else begin
    Timer1.Enabled  := False;
    BitBtn1.Caption := 'BAŞLAT';
  end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  xZaman := IncSecond( xZaman, -1 );
  if IncSecond( xBasZaman, -1*xGeriSay ) >= xZaman then BitBtn1Click(nil);
  Caption := Format('%d/%d', [ xGeriSay - SecondsBetween(xBasZaman, xZaman), xGeriSay ]);
end;
Dosya ekleri
Zamanlayici_GeriSayim.rar
GeriSayim (Timer Kullanarak)
(192.21 KiB) 254 kere indirildi
Resim
Resim ....Resim
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Timer Geri Sayım

Mesaj gönderen brs »

Teşekkür ederim...
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Cevapla