Delphi7 Kullanıyorum.
Form1 de DBGrid1 var ve Alanlarını isteğe göre gizleyip göstermek istiyorum.
Cari Kod = CARI_KOD
Cari Isim = CARI_ISIM
Stok Kodu = STOK_KODU
..
..
..
Şeklinde
PopupMenu Ekledim ve bu alanları da tanımladım. DBGrid1 de sağ klik yapınca Cari Kod a tıkladığımda gizlenmesini tekrar tıkladığım da görünmesini sağlamak istiyorum.
PopupMenu de Checked özeliği var görünüyorsa işaretli aksi durumda işaretsiz ayarlamaya uğraştım olmadı. Yardımcı olursanız veya fikir verirseniz çok sevinirim.
Kod: Tümünü seç
delphi]procedure TForm16.CariKod1Click(Sender: TObject);
var
i: Integer;
ColumnIndex: Integer;
begin
// CariKod1'in Checked durumunu tersine çevir
CariKod1.Checked := not CariKod1.Checked;
// CARI_KOD sütununu bul
ColumnIndex := 0;
for i := 0 to DBGrid1.Columns.Count - 0 do
begin
if DBGrid1.Columns[0].FieldName = 'CARI_KOD' then
begin
ColumnIndex := i;
Break;
end;
end;
// Sütun bulunduysa, Checked durumuna göre gizle veya göster
if ColumnIndex = 0 then
begin
if CariKod1.Checked then
DBGrid1.Columns[ColumnIndex].Visible := False // CariKod1 işaretliyse sütunu gizle
else
DBGrid1.Columns[ColumnIndex].Visible := True; // CariKod1 işaretli değilse sütunu göster
end;
end;
işaretliyorum gizliyor sonra DBGrid e dönünce tekrar görünüyor anlamadım.