![]() |
Columns bei TDBGrid selber erstellen
Hallo,
Ich bin grad am verzweifeln. Ich möchte ein DBGrid in einem Formular zu verwaltung aller Tabellen nutzen, um nicht so viele Formularen erstellen zu müssen. Da die Feldbreiten bei den Standard Columns zu groß sind, habe ich versucht, dem Grid selber die Colums zuzuweisen. Will das ganze halt komplett Dynamisch nutzen können. Ich bekomme es aber partut nicht hin, dem Grid Columns zu adden, da ich mit der TCollection und was das ding alles haben möchte nicht zurecht komme. Hat vielleicht jemand einen Codeschnipsel der sowas erledigt, mit dem ich mir das mal klarer machen kann? Vielen Dank, ALexander |
Re: Columns bei TDBGrid selber erstellen
Wenn es Dir zu Design-Zeit reicht, einfach mit der rechten Maustaste auf das Grid klicken und dann den Column-Editor aufrufen ;-)
...:cat:... |
Re: Columns bei TDBGrid selber erstellen
Hallo ahachmann,
Du suchst wohl etwas in der Art:
Code:
Damit kannst Du Dein DBGrid zur Laufzeit jederzeit ändern, Spalten zuordnen und auch die Spaltenbreite vorgeben.
dbg1.Columns.Clear;
i := 0; dbg1.Columns.Add; dbg1.Columns.Items[i].FieldName := 'Lang'; dbg1.Columns.Items[i].Width := 260; inc(i); dbg1.Columns.Add; dbg1.Columns.Items[i].FieldName := 'WGNr'; dbg1.Columns.Items[i].Width := 40; mfg eddy |
Re: Columns bei TDBGrid selber erstellen
Jo, super das wars.
Aber wie kann ich den nun noch die Überschrift anpassen? column.Title und Displayname funzen leider nicht. Thx, ALexander |
Re: Columns bei TDBGrid selber erstellen
Hallo ahachmann,
nachfolgender Quelltext sollte die meisten Deine Wünsche erfüllen:
Code:
mfg
procedure TFTermin.SpeedButton3Click(Sender: TObject);
var i : integer; begin for i := 0 to dbg1.Columns.Count - 1 do begin // Auswertung der DBGrid-Spalten in Abhängigkeit vom Feldnamen der Tabelle // hier wird nur die Spalte mit dem Namen "Datum" geändert if lowercase(dbg1.Columns.Items[i].Title.Caption) = 'datum' then begin dbg1.Columns.Items[i].Title.Caption := 'Termin'; dbg1.Columns.Items[i].Title.Color := clYellow; dbg1.Columns.Items[i].Title.Font.Style := dbg1.Columns.Items[i].Title.Font.Style + [fsBold]; dbg1.Columns.Items[i].Title.Font.Color := clBlue; dbg1.Columns.Items[i].Title.Font.Size := 14; dbg1.Columns.Items[i].Title.Font.Name := 'Arial'; end; end; end; eddy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz