DBGrid'in son satırına

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

DBGrid'in son satırına

Mesaj gönderen husonet »

S.A.
Arkadaşlar DBGrid'in son satırına geldiğim zaman kayıt ekleme işlemini yapmasını istemiyorum. Bu olayı bir türlü çözemedim fikir verirseniz sevinirim.

İyi Çalışmalar.

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Arkadaşlar kusura bakmayın. Tuş kodunu yanlış vermişim. VK_Up olarak veriyormuşum :x

Olayı hallettim belki başkasına lazım olur diye yazıyorum.

Kod: Tümünü seç

procedure TCariHesapAcilisIslemFrm.DBGrid1KeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
      if (Key = VK_DOWN) then
        begin
          IbDataSet1.DisableControls;
          IbDataSet1.Next;
          if IbDataSet1.EOF then
            Key := 0
          else
            IbDataSet1.Prior;
          IbDataSet1.EnableControls;
         end ;
end;


İyi Akşamlar.

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
DotCom
Kıdemli Üye
Mesajlar: 1696
Kayıt: 11 Tem 2003 10:30
Konum: İzmir
İletişim:

Mesaj gönderen DotCom »

Kod için çok teşekkür ederim Hüseyin abi...

Kolay Gelsin ...
celalatak
Üye
Mesajlar: 70
Kayıt: 27 Şub 2004 12:41

Mesaj gönderen celalatak »

Belki biliyorsunuzdur ama hatırlatmayı uygun gördüm.

DBGrid'e dikkat edilmesi gereken bir önemli husus var. ctrl+Delete ile kayıt kontrolsüz biçimde kayıt silinebiliyor.

Gerçi Delphi uyarı mesajı veriyor (option'da DgConfirimDelet true olduğunda) ama ingilizce olduğu için kullanıcı bilinçsizce aktif kaydı siliyor.

Table'in befordelete olayıyla bu durum kontrol altına alınmalı.

Ayrıca sizin karşılaştığınız problemle bende karşılaşmıştım table'in beforinsert olayına kod yazarak çözüm bulmuştum.
En son celalatak tarafından 01 Mar 2004 01:25 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

Eger kesinlikle kayıt giirlmesin idiyorsanız bu yeterli olmayabilir. Zira insert ya da Ctrl+insert tuşu ile de araya bir yere kayıt ekleme imkanı olabilir. Bence bu kontrolu yaomanın en guzel yeri ilgili Table ya da query'nin before insert eventine Abort yazmak olacaktir.

Kolay gelsin....
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Arkadaşlar aslında benim amacım kayıt silinmesini veya eklenmesini tamamıyla engellemek değil sadece ok tuşlarıyla kayıt üzerinde gezinmesini sağlamaktı.

Fahrettin Abi'ye ayrıca Teşekkür Ederim insert ya da Ctrl+insert tuşu olayını bilmiyordum. Bunu göz önüne almam gerekli çünkü kullanıcıya kayıt girişini sadece Enter tuşuyla kolonları gezerken yaptırtma yı planlıyordum aynı LKS programı gibi. (Ok tuşları sadece dolaşma ya izin verecek).

Yorumlarınız için teşekkür ederim.

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

sadece okuma işlemi için dbgrid in readonly özelliğini true yapmaya ne dersiniz.
iyi çalışmalar.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Cevapla