Delphi Kapatma Tuşu (X) kodu lazım

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
omer42u
Üye
Mesajlar: 17
Kayıt: 24 Şub 2014 01:14

Delphi Kapatma Tuşu (X) kodu lazım

Mesaj gönderen omer42u »

Merhaba Arkadaşlar belki basittir ama ben bulamadım
formu sağ üst köşedeki X tuşundan kapattığımda yapılması gereken kodlar var ama bunu nasıl yapacağımı bulamadım normal onclose olayı değil karıştırmayın onclosequery yi denedim o da değil galiba onun farkı ne onuda anlayamadım açıkcası
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: Delphi Kapatma Tuşu (X) kodu lazım

Mesaj gönderen G.Arkas »

Formun kapanma işlemini yakalayan 3 adet Event vardır.

OnClose - OnCloseQuery - OnDestroy
Resim
cozturk
Üye
Mesajlar: 484
Kayıt: 15 Haz 2005 05:22

Re: Delphi Kapatma Tuşu (X) kodu lazım

Mesaj gönderen cozturk »

omer42u,
Kapatma işleminde yapılacak işler, onclosequery olayına yazılır. Bunu zaten bildiğinizi belirtmişsiniz.

"Delphi Kapatma Tuşu (X) kodu lazım" cümlesiyle kastettiğiniz,
bu işi yapacak kod olsa gerek. O da çok kolay :

Kod: Tümünü seç

Close;
Örnek kullanım:

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
begin  // bir butonun kapatma işlemi yapması sağlanıyor
  close;
end;
Bu kod ile, formu el ile kapatıyormuşuz gibi, kapatmayla ilgili olaylar çalışır. Bu olaylardan daha önce yapılmak istenen işler varsa, Close öncesinde kod yazılır. Sonunda form kapanır.

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
begin  // bir butonun kapatma işlemi yapması sağlanıyor
   
   Dusun;  // diğer işler
   Tasin;
   Bip;
   Close;
end;
Kullanıcı avatarı
warder
Üye
Mesajlar: 255
Kayıt: 10 Mar 2004 04:59

Re: Delphi Kapatma Tuşu (X) kodu lazım

Mesaj gönderen warder »

OnClose ile karıştırmayın demişsiniz ama siz durumu karıştırıyorsunuz...
OnClose olayında TCloseAction parametresi Action geliyor.
Aşağıdakilerden herhangi birisine eşitleyip seçiminizi yapabilirsiniz.
caNone, caHide, caFree, caMinimize

Action = caNone ... kapatmayı iptal eder..
Kullanıcıya emin olup olmadığını soracağınız ve duruma göre işlerinizi tamamlayacağınız kısım...
... Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!
Mustafa Kemal Atatürk...
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Delphi Kapatma Tuşu (X) kodu lazım

Mesaj gönderen brs »

Kod: Tümünü seç

procedure TForm3.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
  Cevap: Word;
begin
  try
    Cevap := Application.MessageBox
      ('Programı Kapatmak İstediğinizden Emin Misiniz?', 'Çıkış Onay!',
      MB_YesNo or MB_ICONQUESTION);
    begin
      if Cevap = MrYes then
        with Form1.FDQueryUser do
        begin
          Form1.FDConnection.Connected := False;
          Close;
          SQL.Clear;
          SQL.Add('Update User Set ONLINE=:Ofline');
          SQL.Add('Where KULLANICI =''' + Form1.Edit1.Text + '''');
          ParamByName('Ofline').AsString := 'Ofline';
          ExecSQL;
          // AramaKriterleriniTemizle(Sender);
          Application.Terminate;
        end
      else
      begin
        if Cevap = MrNo then
        begin
          CanClose := False;
        end;
      end;
    end;
  except
    Application.MessageBox('Güncelleme İşleleri Sırasında Hata Oluştu!',
      'Mesaj', 0)
  end;
end;
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Cevapla