![]() |
Spaltenreihenfolge im DBGrid ändern u. speichern/restauriern
Hallo,
in einer kleinen Datenbankapplikation soll der Anwender die Breite und die Reihenfolge der Spalten im DBGrid ändern können. Zur Laufzeit funktioniert dies. Nun sollen diese Änderungen in einer INI-Datei oder der Registry gespeichert werden um beim nächsten Programmstart von dort ausgelesen und restauriert zu werden. Mit der Spaltenbreite gelingt dies. Schreiben mit:
Delphi-Quellcode:
Lesen mit:
For i := 0 To dbgUCE.Columns.Count - 1 Do begin
RegIni.WriteInteger('CONFIG','dbgUCE.Columns[' + IntToStr(i) + '].Width',dbgUCE.Columns[i].Width); end;
Delphi-Quellcode:
Die Reihenfolge bekomme ich nicht gespeichert und restauriert.
For i := 0 To dbgUCE.Columns.Count - 1 Do begin
dbgUCE.Columns[i].Width := RegIni.ReadInteger('CONFIG','dbgUCE.Columns[' + IntToStr(i) + '].Width',dbgUCE.Columns[i].Width); end; Mit dem Attribut Index von Columns.Items[i] funktioniert es nicht, ID ist schreibgeschützt. Man kann Index zwar einen neuen Wert zuweisen, der dann auch zu einer neuen Position der Spalte führt, aber der Index scheint sich beim Verschieben zur Laufzeit nicht zu ändern, so dass man über den Zugriff auf den Index nicht die aktuelle Position der Spalte im DBGrid erhält, sondern die Position zur Entwicklungszeit. Eine Zuweisung im Ereignis onColumnMoved führt auch nicht zum gewünschten Ergebnis Hat jemand eine Idee, mit welchem Attribut des DBGrids bzw. der Columns das zu realisieren ist. Stephan |
Re: Spaltenreihenfolge im DBGrid ändern u. speichern/restaur
ich benutze jvDBGrid von den Jedis. Dieses kann sein Aussehen speichern. Gegebenenfalls dort im SourceCode nachsehen, wie es gemacht wird?
|
Re: Spaltenreihenfolge im DBGrid ändern u. speichern/restaur
Du müsstest Dir den Feldnamen der Spalte merken und ggf. setzen. Schau doch mal nach TDBGrid.Columns.Fieldname.
|
Re: Spaltenreihenfolge im DBGrid ändern u. speichern/restaur
Wie wäre es mit TDBGrid.Columns.SaveToFile und .ReadFromFile?
Damit wird Position und Breite aller Spalten gespeichert. |
Spaltenreihenfolge im DBGrid ändern u. speichern/restaur
Zitat:
Stephan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 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