DBGrid1 de Columns Ekleme ve Çağırma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ozcank
Üye
Mesajlar: 925
Kayıt: 28 Nis 2005 05:29

DBGrid1 de Columns Ekleme ve Çağırma

Mesaj gönderen ozcank »

Arkadaşlar merhaba; Benim yapmak istediğim şu;
DBGrid1 columns larını caption isim vererek kaydediyorum ve sonrasında bunları ,
Aşağıdaki Kod yardımı ile ListCheckBox1 e aktarıyorum ama buraya da tablo da ki alanlar geliyor FATUIRS_NO Caption a ben Belge No yazıyorum bunun gelmesini istiyorum.
kaydettikten sonra da geri çağırdığımda hangi alanları işaretlediysem o şekilde gelmesini istiyorum. Ama ben bir türlü beceremedim . Yardımlarınıza ihtiyacım var.

Kod: Tümünü seç

var
     I,S:Integer;
begin
     Dbgrid1.Columns.Clear;
     S:=0;
     For I:=0 To Listele.Items.Count-1 do begin
         If Listele.Checked[I] Then begin
            Dbgrid1.Columns.Add;
            Dbgrid1.Columns[S].Title.Caption:=Listele.Items[I];
            Dbgrid1.Columns[S].FieldName    :=Listele.Items[I];
            S:=S+1;
     end;
     end;

end;
yusuf simsek
Üye
Mesajlar: 330
Kayıt: 09 Mar 2004 11:18
Konum: Konya
İletişim:

Re: DBGrid1 de Columns Ekleme ve Çağırma

Mesaj gönderen yusuf simsek »

iki listbox kullanın, birisinde Görselde kullanacağınız "Caption" değeri, diğerinde de "FieldName" değeri...

Caption list'te seçilen ItemIndex in karşılığını FieldName ItemIndex değerini okuyabilirsiniz.
Bugün bir kez daha,
Hiç Birşey Bilmediğimi Öğrendim!!!

https://extrayazilim.com
ozcank
Üye
Mesajlar: 925
Kayıt: 28 Nis 2005 05:29

Re: DBGrid1 de Columns Ekleme ve Çağırma

Mesaj gönderen ozcank »

yusuf simsek kardeşim örnek bir kod var mı?
yusuf simsek
Üye
Mesajlar: 330
Kayıt: 09 Mar 2004 11:18
Konum: Konya
İletişim:

Re: DBGrid1 de Columns Ekleme ve Çağırma

Mesaj gönderen yusuf simsek »

Sizin koddan devam edersek sizin için daha rahat olur;

Kolon Başlıklarını veritabanında tutuyorsanız, tabloya [ AlanAdi ] sütununu ekleyiniz, ini dosyada tutuyorsanız Caption değeri ile FieldName değerini beraber tutunuz...
ColumnCaption, ColumnFieldName
Belge No FATURAIRS_NO
Belge Tarih FATURAIRS_TARIH
...
...
...
Sizde zaten [ Listele ] listbox içinde Kolon Başlıkları mevcut...

for i:= 0 to alantable.recordcount - 1 do
begin
listele.items.add(alantable.fieldname('columncaption').asstring;
end;

-------------------------------------

listele.items.add('Belge No');
listele.items.add('Belge Tarih');
siz buna ilaveten bir de FildName için listbox oluşturacaksınız...

for i:= 0 to alantable.recordcount - 1 do
begin
listele.items.add(alantable.fieldname('columncaption').asstring;
listeleFieldName.items.add(alantable.fieldname('ColumnFieldName').asstring;
end;

-------------------------------------

listele.items.add('Belge No');
listeleFieldName.items.add('FATURAIRS_NO');

listele.items.add('Belge Tarih');
listeleFieldName.items.add('FATURAIRS_TARIH');
Sonrasında FieltdName [ listeleFieldName ] den okuyacaksın;
Dbgrid1.Columns[S].FieldName :=listeleFieldName.Items;


Kod: Tümünü seç

var
     I,S:Integer;
begin
     Dbgrid1.Columns.Clear;
     S:=0;
     
     For I:=0 To Listele.Items.Count-1 do begin
         If Listele.Checked[I] Then begin
            Dbgrid1.Columns.Add;
            Dbgrid1.Columns[S].Title.Caption:=Listele.Items[I];
            
            
            Dbgrid1.Columns[S].FieldName    :=listeleFieldName.Items[I];
            
            
            S:=S+1;
     end;
     end;

end;
İnşallah yazdıklarım anlaşılır olmuştur,

İyi çalışmalar
Bugün bir kez daha,
Hiç Birşey Bilmediğimi Öğrendim!!!

https://extrayazilim.com
Cevapla