Dbgridte Escile Kayıt iptal olayı?

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
hedefbusiness

Dbgridte Escile Kayıt iptal olayı?

Mesaj gönderen hedefbusiness »

Herkese ii calısmalar

Dbgrid icerisinde Kayıt üzerinde degisiklik yaparken Esc tusuna
basıldıgında (Dischard Changes ? ) Mesajının ÇIKMAMASINI ve Esc tusunun bu CANCEL
gorevini iptal etme işlemini nasıl halledeblilriz?
En son hedefbusiness tarafından 06 Nis 2005 11:55 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Ali Erdoğan
Kıdemli Üye
Mesajlar: 1026
Kayıt: 11 Şub 2005 02:12
Konum: İstanbul

Mesaj gönderen Ali Erdoğan »

Dbgrid in keypress olayına:

Kod: Tümünü seç

if key = VK_ESC then //Esc nin tuş kodundan emin değilim.
   begin
      table1.cancel;
   end;
Master43
Üye
Mesajlar: 73
Kayıt: 17 Ara 2004 12:05

Mesaj gönderen Master43 »

Yanlış anlamadıysam Esc tuşuna basıldığında onay almadan kaydı iptal etmek istemiyorsun, Bunun için aşağıdaki kodu kullanabilirsin

Kod: Tümünü seç

procedure TfTable.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = 27 then
    if MessageBox(Handle, 'Discart changes?', 'Onay', MB_YESNO) = idNo then
      SysUtils.Abort
    else
      Table1.Cancel;
end;
[/code]
Cevapla