buttona 3 defa basınca işlem yapsın ?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen erdogan_ozkaya »

hocam cevabınız için teşekkür ederim fakat çalışmadı :(
Resim
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen erdogan_ozkaya »

yok hayır ekli ama çalışmadı hata aşağıdaki gibi.

Resim
SimaWB yazdı:Yine "hata veriyor" demişsiniz ama hatayı yazmamışsınız :(
Biz tahmin yaparak devam edelim en iyisi: XE8 için System.Classes unitini eklemelisiniz.
Kullanıcı avatarı
adelphiforumz
Üye
Mesajlar: 602
Kayıt: 01 Nis 2008 05:38
Konum: İstanbul

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen adelphiforumz »

Size zahmet boş bir delphi projesi açıp
ekrana yalnızca bir button atın ve altınada
aşağıdaki kod içeriği şekline getirin başka hiç bir ayar yapmayın
ve o unit kısmınıda burda paylaşırmısınız

resimden gördüğüm kadarı ile sizin kodlarda {R *fmx} gibi içerikler görüyorum

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
  procedure prc_Sifirla;
  begin
      (Sender as TButton).Hint := IntToStr(GetTickCount);
      (Sender as TButton).Tag := 1;
      (Sender as TButton).Caption := IntToStr((Sender as TButton).Tag);
  end;
begin
    if (Sender as TButton).Hint = '' then
          prc_Sifirla
    else
    begin
        if (GetTickCount - StrToInt((Sender as TButton).Hint) ) <= 5000 then
        begin
            (Sender as TButton).Tag := (Sender as TButton).Tag + 1;
            if (Sender as TButton).Tag = 3 then
                (Sender as TButton).Caption := '5 sn. doldu'
            else
            if (Sender as TButton).Tag < 3 then
                (Sender as TButton).Caption := IntToStr((Sender as TButton).Tag)
            else
            if (Sender as TButton).Tag > 3 then
            begin
                prc_Sifirla;
                (Sender as TButton).Caption := IntToStr((Sender as TButton).Tag);
            end;
        end
        else
          prc_Sifirla;
    end;
end;
Ehil olmayanlara sabretmek ehil olanları parlatır.
Akıllı birisinden gelen cefa, bilgisizlerin vefasından iyidir.
Bilgiye ulaştı mı ayak, kanat olur
Biz insanı kıyafetiyle ağırlar bilgisiyle uğurlarız.
Mevlana
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen erdogan_ozkaya »

Hocam yeni proje açtım ve ünit içeriği aşağıdaki gibi,
xe8 kullanıyorum.

Kod: Tümünü seç

unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FMX.Controls.Presentation, FMX.StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
implementation

{$R *.fmx}

procedure TForm1.Button1Click(Sender: TObject);
  procedure prc_Sifirla;
  begin
      (Sender as TButton).Hint := IntToStr(GetTickCount);
      (Sender as TButton).Tag := 1;
      (Sender as TButton).Caption := IntToStr((Sender as TButton).Tag);
  end;
begin
    if (Sender as TButton).Hint = '' then
          prc_Sifirla
    else
    begin
        if (GetTickCount - StrToInt((Sender as TButton).Hint) ) <= 5000 then
        begin
            (Sender as TButton).Tag := (Sender as TButton).Tag + 1;
            if (Sender as TButton).Tag = 3 then
                (Sender as TButton).Caption := '5 sn. doldu'
            else
            if (Sender as TButton).Tag < 3 then
                (Sender as TButton).Caption := IntToStr((Sender as TButton).Tag)
            else
            if (Sender as TButton).Tag > 3 then
            begin
                prc_Sifirla;
                (Sender as TButton).Caption := IntToStr((Sender as TButton).Tag);
            end;
        end
        else
          prc_Sifirla;
    end;

end;

end.
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen erdogan_ozkaya »

aynı hataları veriyor :(
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen greenegitim »

:?: :?: :?:
http://www.getgnu.org/gnulinux/gnulinux ... rulur.html yanlış anlaşılma olmasın bu linkteki yazı kendim içinde geçerlidir.
Mücadele güzelleştirir!
ertank
Kıdemli Üye
Mesajlar: 1716
Kayıt: 12 Eyl 2015 12:45

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen ertank »

erdogan_ozkaya yazdı:hocam cevabınız için teşekkür ederim fakat çalışmadı :(
Resim
Öncelikle siz farklı cihazlar için derlenebilecek proje geliştiriyorsunuz. (File->New->Multi Device Application) Eğer uygulamanız sadece Windows altında çalışacak ise yeni projeye başlar iken File->New->VCL Forms Application seçeneğini seçmelisiniz.

Hata mesajını yorumlayabildiğim kadarı ile buton tıklaması ile gelen (Sender: TObject) bir TButton sınıfı değil. Bunun yerine TControl sınıfında bir nesne geliyor. Yukarıda bahsettiğim gibi VCL Forms Application türünde bir yeni proje başlattığınız zaman yine aynı hata mesajını alıyor musunuz? Eğer hata mesajı almıyor iseniz yüksek ihtimalle proje türünüz sebebi ile örnek kodu kullanamayacaksınız.

Muhtemelen aynı sebepten daha önce gönderdiğim test edilmiş kod derleme zamanında hata verdi.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen SimaWB »

greenegitim yazdı::?: :?: :?:
http://www.getgnu.org/gnulinux/gnulinux ... rulur.html yanlış anlaşılma olmasın bu linkteki yazı kendim içinde geçerlidir.
+1

Hay Allah razı olsun!
There's no place like 127.0.0.1
Kullanıcı avatarı
kimimben
Üye
Mesajlar: 129
Kayıt: 28 Oca 2016 04:41
Konum: İstanbul

Re: buttona 3 defa basınca işlem yapsın ?

Mesaj gönderen kimimben »

SimaWB yazdı:Sorduğunuz sorunun cevabı bu yazdığınız kodlar olduğuna emin misiniz?
:N)
Cevapla