Form-Resize und DBGrid

Rund um die LCL und andere Komponenten
Antworten
Joh
Lazarusforum e. V.
Beiträge: 191
Registriert: Sa 26. Mai 2012, 17:31
OS, Lazarus, FPC: Win 10 (L 2.2.6 x64 FPC 3.2.2)
CPU-Target: 64Bit

Form-Resize und DBGrid

Beitrag von Joh »

Moin,
ich spiele gerade mit Ankern beim DBGrid rum. Da bekomme ich die Objekte auf der Form auch passig positioniert. Alles schick.

Aber: gibt es auch Eigenschaften eines DBGrid, das die Spaltenbreite automatisch an die Gridbreite angepaßt wird?
Alles, was ich bisher finde sind Datenabhängige Breiten. Ich möchte aber aktuell, das
i) Spalte 1; integer: Feste Breite
ii) Spalte 2; String: 60% des verbleibenden Platzes
iii) Spalte 3; String: 40% des verbleibenden Platzes; also den Rest erhält.

Wie ich das manuell mache, weß ich, aber da die Größenanpassung ansonsten automagisch klappt, könnte es ja auch hier eine Einstellung geben.
just my two Beer

Soner
Beiträge: 624
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Form-Resize und DBGrid

Beitrag von Soner »

Es gibt die Eigenschaften SizePriority und AutoFillColumns. Für feste Spaltenbreite muss man bei SizePriority 0 eingeben. Was die Eigenschaften bedeuten am besten in Wiki und Dokumentation nachschauen.

Joh
Lazarusforum e. V.
Beiträge: 191
Registriert: Sa 26. Mai 2012, 17:31
OS, Lazarus, FPC: Win 10 (L 2.2.6 x64 FPC 3.2.2)
CPU-Target: 64Bit

Re: Form-Resize und DBGrid

Beitrag von Joh »

Danke Soner,

sizePriority hatte ich gefunden und mit rumprobiert; aber erst mit AutoFillColumns wird ein Schuh draus.

Und wer lesen kann, ist klar im Vorteil <grmbl$%!>:
Aus der Hilfe zu SizePriority: A non-zero value causes the column width to be adjusted when AutoFillColumns is enabled in the Grid control.

AutoFillColumns - was für ein blöder Name; bei AutoSizeColumns und sizePriority wäre ich wohl auf einen Zusammenhang gestoßen.
just my two Beer

wp_xyz
Beiträge: 4895
Registriert: Fr 8. Apr 2011, 09:01

Re: Form-Resize und DBGrid

Beitrag von wp_xyz »

Naja, AutoSizeColumns hätte im Gegenzug mich verwirrt, denn den Begriff "AutoSize" bei Columns nimmt man oft, wenn man die Spaltenbreite an den Inhalt anpassen will. Generell ist der ganze Themenbereich recht verwirrend, denn der Name AutoSizePriority suggeriert im Zusammenhang mit einem Integer, dass es verschiedene Level von AutoSizing gibt, was aber nicht stimmt, denn es kommt nur darauf an, ob der Wert 0 ist oder etwas anderes, so dass es ein Boolean auch getan hätte. Und warum ist der Propertynamen so versponnen? "FixedColumWidth" wäre klarer gewesen. Aber das steht schon seit fast 20 Jahren so in der grids-Unit, und wird sich nicht mehr ändern. Daher: immer mal wieder das recht gute wiki zu den LCL-Grids lesen: https://wiki.lazarus.freepascal.org/Gri ... illColumns

Antworten