Seite 1 von 1

UnoControlGrid - Spaltenköpfe zentrieren und Spalten optimale Breite

Verfasst: Di, 16.01.2018 09:19
von Stephan
Hallo,

ich suche für ein Grid-Steuerelement auf einem Basic-Dialog:

-die Möglichkeit den Text in den Spaltenköpfen zu zentrieren ohne das die Zentrierung auch für die Texte der gesamten Spalte gilt

-die Möglichkeit einer automatischen optimalen Breite bzw. zumindest eine optimale Breite anhand der Texte der Spaltenköpfe bei einem Grid das bisher keine Datensätze enthält

Eine Beispieldatei für ein Grid auf Dialog ist z.B. hier:
http://www.mic-consulting.de/de/artikel ... ridDlg.ods


Am Rande:
warum lässt sich die Eigenschaft "Flexibility" einer Gridspalte nicht auf True setzen, sondern es kommt dabei ein Laufzeitfehler (egal wie "Resizeable" eingestellt ist)? Getestet in LO 5.1.6


Gruß
Stephan

Re: UnoControlGrid - Spaltenköpfe zentrieren und Spalten optimale Breite

Verfasst: Di, 16.01.2018 20:31
von mikeleb
Hallo Stephan,

die Eigenschaft "Flexibility" einer Gridspalte ist vom Typ long. Du kannst sie also 0 oder 1 setzen.
Was die Aussage der API genau bedeutet, müsste man wahrscheinlich austesten:
If a column has a flexibility greater than 0, it is set in relationship to the flexibility of all other such columns, and the respective widths of the columns are changed in the same relationship.
Soweit ich es gefunden habe, wird die Orientierung der Spalte für diese komplett definiert - wird also nichts.

Re: UnoControlGrid - Spaltenköpfe zentrieren und Spalten optimale Breite

Verfasst: Sa, 17.08.2019 11:06
von marcel_at_work
Hallöchen Stephan,

der Thread ist zwar schon länger her, aber ich habe diese Woche (nach 12 Jahren OHNE) auch endlich das Grid-Element für mich entdeckt und mir gestern genau dieselbe Frage gestellt. Die Funktion der Kopf-Zentrierung wird zwar nicht über das GridControl gestellt, aber die Aufgabe lässt sich einfach über ein zweites GridControl realisieren - eins für die Spaltenköpfe und direkt darunter, für die Spalteninhalte. Wenn man diese wenigen Zeilen Code in dieselbe Funktion verpackt, muss man sich auch nie mehr Gedanken darum machen.

Viele Grüße

Marcel