Selam,
DBGird de herhangi bir hücredeki yazının genişliğine göre otomatik olarak o kolun genişliğini nasıl ayarlaya bilirim bilirim...
var
i: Integer;
begin
for i := 0 to DBGrid1.Columns.Count - 1 do
DBGrid1.Columns.Width := 5 + DBGrid1.Canvas.TextWidth (DBGrid1.DataSource.DataSet.Fields.Text)
end;
DBGrid satır genişliğini otomatik ayarlama
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
DBGrid satır genişliğini otomatik ayarlama
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Re: DBGrid satır genişliğini otomatik ayarlama
.Text Değilde DisplayText i kullan, TField a format verilmiş olabilir. Birde şunu dene
L := DBGrid1.Canvas.TextWidth ('W_') + 3;
DBGrid1.Columns.Width := Length(DBGrid1.DataSource.DataSet.Fields.Size) * L;
yani engeniş basılacak harfin genişliğini bulup, (W_ örnek) bunu Field ın size ınla çarp. Senin kodunda üzerinde olduğu row un değerlernine göre ayarlıyor, Yani field size 25 ama içeriği 'abc' abcye göre ayarlıyorsun, diğer bir rowdaki değer 'abcdefgajkdhf' se bu abc kadar görünür.
Kolay gele
L := DBGrid1.Canvas.TextWidth ('W_') + 3;
DBGrid1.Columns.Width := Length(DBGrid1.DataSource.DataSet.Fields.Size) * L;
yani engeniş basılacak harfin genişliğini bulup, (W_ örnek) bunu Field ın size ınla çarp. Senin kodunda üzerinde olduğu row un değerlernine göre ayarlıyor, Yani field size 25 ama içeriği 'abc' abcye göre ayarlıyorsun, diğer bir rowdaki değer 'abcdefgajkdhf' se bu abc kadar görünür.
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!