Değişikliği algılama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
Dostk
Üye
Mesajlar: 144
Kayıt: 22 Ağu 2015 12:21

Değişikliği algılama

Mesaj gönderen Dostk »

Selam;

Listview yeni kayıt girişi veya kayıt silindiğinde kullanıcı forumdan çıkmamdan önce kaydetmesi için uyarı verdiriyorum;
Fakat herhangi bir hücrede değişiklik yapıldığını bir türlü yakalayamadım değişikliği nasıl yakalayabilirim?

Silindiğinde

Kod: Tümünü seç

procedure TForm1.ListviewDeletion(Sender: TObject; Item: TListItem);
begin
  Save := 'Evet';
end;
Kayıt girişi yapıldığında

Kod: Tümünü seç

procedure TForm1.ListviewInsert(Sender: TObject; Item: TListItem);
begin
  Save := 'Evet';
end;
Çıkış yaptığında uyarı

Kod: Tümünü seç

procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if (Listview.Items.Count > 0) and (Pos(Save, 'Evet') > 0) then
  begin
    AlertMesaj('Değişikliği kaydediniz...     ', 3);
  end
  else
  begin
ertank
Kıdemli Üye
Mesajlar: 1716
Kayıt: 12 Eyl 2015 12:45

Re: Değişikliği algılama

Mesaj gönderen ertank »

Merhaba,

Öncelikle gönderdiğiniz kod örnekleri ile ilgili olarak "Save" değişkenini string olarak kullanmak yerine Boolean türünde tanımlamanızda fayda var. Kod yazma kolaylığı dışında küçük performans artışı sağlayacaktır.

TListView bileşeninin OnEdited() olayını kullanarak istediğiniz gerçekleştirmeniz mümkün olabilir.
Kullanıcı avatarı
Dostk
Üye
Mesajlar: 144
Kayıt: 22 Ağu 2015 12:21

Re: Değişikliği algılama

Mesaj gönderen Dostk »

Teşekkür ederim...
Cevapla