merhaba arkadaşlar
timer nesnesine öyle bir kod yazmalıyımki
edit1 de belirttiğim saniye kadar dursun ondan sonra örnek edit2.text temizlesin
daha sonra başa al dediğimde tekrar editteki süre kadar beklesin ve edit2.text tekrar temizlesin
yardımınız için tşk. ederim.
süre verme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 839
- Kayıt: 03 Eki 2007 02:00
-
- Üye
- Mesajlar: 151
- Kayıt: 16 Eki 2006 10:43
- Konum: ERZURUM
Re: süre verme
Kod: Tümünü seç
var
Form1: TForm1;
i : Integer ;
implementation
uses Math;
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
i := i + 1 ;
if i = StrtoInt(Edit1.Text) then
begin
Edit2.Clear ;
Timer1.Enabled := False ;
end ;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := True ;
i := 0 ;
end;
end.
akıllanma , aklını başına toplama , toparlanma , kendisini derleme bu dünyaya ait bir vazife.
ahirette nasıl olsa aklın başına gelecek.
ahirette nasıl olsa aklın başına gelecek.
-
- Üye
- Mesajlar: 839
- Kayıt: 03 Eki 2007 02:00
Re: süre verme
hocam ilgin ve cevabıl için teşekkür ederim fakat kod sürekli hata veriyor 

-
- Üye
- Mesajlar: 151
- Kayıt: 16 Eki 2006 10:43
- Konum: ERZURUM
Re: süre verme
Timer1 in enabled ini formun onshow unda false yapın ve edit1 ede sayı girildiğinden emin olun. Hata vermeden çalışır.
akıllanma , aklını başına toplama , toparlanma , kendisini derleme bu dünyaya ait bir vazife.
ahirette nasıl olsa aklın başına gelecek.
ahirette nasıl olsa aklın başına gelecek.
-
- Üye
- Mesajlar: 839
- Kayıt: 03 Eki 2007 02:00
Re: süre verme
Hocam aynen dediğiniz gibi yapıyorum fakat tık yok

Kod: Tümünü seç
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Timer1: TTimer;
Edit1: TEdit;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i : Integer ;
implementation
{$R *.dfm}
uses Math;
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := True ;
i := 0 ;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
i := i + 1 ;
if i = StrtoInt(Edit1.Text) then
begin
Edit2.Clear ;
Timer1.Enabled := False ;
end ;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text:='5'; // 5 Saniye Vs.
Timer1.Enabled := False ;
end ;
end.
Re: süre verme
Kod: Tümünü seç
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Timer1: TTimer;
Edit1: TEdit;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i : Integer = 0;
implementation
{$R *.dfm}
uses Math;
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := True ;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
i := i + 1 ;
if i = StrtoInt(Edit1.Text) then
begin
Edit2.Clear ;
Timer1.Enabled := False ;
i:=0;
end ;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text:='5'; // 5 Saniye Vs.
Timer1.Enabled := False ;
end ;
end.
Sanırım ki, Timer1.enabled:=true dediğinizde direk timer1timer olayı işleniyor. İ:=0 satırı timer1timer eventından sonra işleniyor. Bu sorun yaratıyor olabilir. üstteki gibi düzeltirseniz eğer sorun dediğim sorunsa hallolucaktır.
saygılarımla..
Batuhan TAŞDÖVEN
'Yükseldikçe küçülen bir uçurtma..'
'Yükseldikçe küçülen bir uçurtma..'