Hallo zusammen,
ich arbeite mit einem Sqlite3 Datenbank die ich auf einem DBGrid ausgeben möchte. Das funktioniert auch soweit.
Das Problem ist aber die Spaltenbreite. Das DBGrid zeigt immer nur eine Spalte der Datenbank (dann muss ich mit der Scrollbox auf die nächste Seite springen). Bei den FieldDefs wurde der Wert Size auf "30" gesetzt. Wo liegt der Fehler, bzw wie kann ich die Spaltenbreite anpassen?
Dankeschön.
[gelöst]DBGrid Spaltenbreite anpassen
-
- Beiträge: 18
- Registriert: Do 11. Feb 2016, 17:13
[gelöst]DBGrid Spaltenbreite anpassen
Zuletzt geändert von purzel1994 am Mi 24. Feb 2016, 13:35, insgesamt 1-mal geändert.
Re: DBGrid Spaltenbreite anpassen
z.B.:
Code: Alles auswählen
procedure TForm1.SQLQuery1AfterOpen(DataSet: TDataSet);
var
i: Int32;
begin
for i := 0 to SQLQuery1.FieldCount - 1 do
case SQLQuery1.Fields[i].FieldName of
'id':
begin
DBGrid1.Columns.Items[i].SizePriority := 0; //wird bei AutoFillColumns nicht in der Größe geändert
DBGrid1.Columns.Items[i].Width := 0;
DBGrid1.Columns.Items[i].Title.Caption := 'ID-Person'; //man könnte hier auch den angezeigten Column-Titel ändern (gänge auch mit automatisch übersetzen Resourcestrings)
end;
'prename':
begin
DBGrid1.Columns.Items[i].SizePriority := 0;
DBGrid1.Columns.Items[i].Width := 100;
DBGrid1.Columns.Items[i].Title.Caption := 'Vorname';
end;
'surname':
begin
DBGrid1.Columns.Items[i].SizePriority := 1; //wird in der Größe bei AutoFillColumns automatisch geändert
DBGrid1.Columns.Items[i].Title.Caption := 'Nachname';
end;
end;
end;
Zuletzt geändert von Michl am Mi 24. Feb 2016, 13:05, insgesamt 1-mal geändert.
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
-
- Beiträge: 18
- Registriert: Do 11. Feb 2016, 17:13
Re: DBGrid Spaltenbreite anpassen
Danke für die schnelle Antwort, funktioniert bei mir aber leider nicht. Die Spalte wird zwar umbenannt, die Größe bleibt aber auch nach dem hinzufügen einer neuen Zeile gleich.
Irgendeine Idee an was das liegen könnte?
Irgendeine Idee an was das liegen könnte?
Re: DBGrid Spaltenbreite anpassen
Hast du die Eigenschaft AutoFillColumns vom DBGrid an oder aus?
Wenn du nicht weiter kommst, poste doch hier ein Minimalbsp als Zip (ohne Executable, ohne Verzeichnis Lib, ohne SQLite Library).
Wenn du nicht weiter kommst, poste doch hier ein Minimalbsp als Zip (ohne Executable, ohne Verzeichnis Lib, ohne SQLite Library).
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
-
- Beiträge: 18
- Registriert: Do 11. Feb 2016, 17:13
Re: DBGrid Spaltenbreite anpassen
Das war´s...
Danke für deine Hilfe!
Danke für deine Hilfe!