Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi VST AutoFit es werden nur die sichtbaren Einträge berücksichtigt (https://www.delphipraxis.net/196232-vst-autofit-es-werden-nur-die-sichtbaren-eintraege-beruecksichtigt.html)

TUX_der_Pinguin 3. Mai 2018 08:42

VST AutoFit es werden nur die sichtbaren Einträge berücksichtigt
 
Hallo DPler,

ich verwende TVirtualStringTree (Vers. 6.2 via GetIt, Delphi 10.1) und habe "plötzlich" das Problem das wenn ich die Spaltenbreiten mit VST.Header.AutoFit() anpassen will, das nur die sichtbaren Einträge berücksichtigt werden und nicht wie sonst die komplette Tabelle. Wenn ich dann z.b. scrolle werden mit Einträge Verkürzt dargestellt (Eintr...).

Ich hoffe jemand von euch hat einen Tipp für mich, bin gerade ziemlich ratlos ob das jetzt Bug oder Feature ist.

TUX_der_Pinguin 3. Mai 2018 08:56

AW: VST AutoFit es werden nur die sichtbaren Einträge berücksichtigt
 
Habe den "Fehler" dann selbst gefunden.

In früheren Projekten habe ich immer so die Spaltenbreite angepasst...
Delphi-Quellcode:
VST.Header.AutoFitColumns(False, smaUseColumnOption, 0, VST.Header.Columns.Count-1);


Und da ich sowieso immer alle Spalten anpassen will, dachte ich, ich könnte das ganze etwas abkürzen...
Delphi-Quellcode:
VST.Header.AutoFitColumns(False, smaAllColumns);


Jedoch greift im zweiten Fall ein weiterer Mechanismus der dafür sorgt das nur die sichtbaren Spalten berücksichtigt werden. :roll:


Naja Ende gut, alles Gut. ;)

Codehunter 3. Mai 2018 09:18

AW: VST AutoFit es werden nur die sichtbaren Einträge berücksichtigt
 
Wobei ich persönlich das gar nicht so schlecht finde, wenn nur die sichtbaren Einträge berücksichtigt werden. Hast du nämlich unter 100.000 Zeilen nur eine mit einer wesentlich längeren Spaltenbreite/Textlänge, erzeugst du dadurch jede Menge Weißraum. Da ist es mir fast lieber, überlange Zellen mit "..." abzukürzen und den Inhalt bei Bedarf (Maus-Hover) als Hint anzuzeigen. Zusätzlich vielleicht noch eine Funktion wie beim Excel: Doppelklick im Spaltenkopf-SizeGrip vergrößert die Spalte auf volle Breite.

TUX_der_Pinguin 3. Mai 2018 09:35

AW: VST AutoFit es werden nur die sichtbaren Einträge berücksichtigt
 
Zitat:

Zitat von Codehunter (Beitrag 1401149)
Wobei ich persönlich das gar nicht so schlecht finde, wenn nur die sichtbaren Einträge berücksichtigt werden. Hast du nämlich unter 100.000 Zeilen nur eine mit einer wesentlich längeren Spaltenbreite/Textlänge, erzeugst du dadurch jede Menge Weißraum. Da ist es mir fast lieber, überlange Zellen mit "..." abzukürzen und den Inhalt bei Bedarf (Maus-Hover) als Hint anzuzeigen. Zusätzlich vielleicht noch eine Funktion wie beim Excel: Doppelklick im Spaltenkopf-SizeGrip vergrößert die Spalte auf volle Breite.

Klar in manchen Fällen macht das sicherlich auch Sinn, nur in meinem speziellen Fall nicht. Es stehen aber auch keine 100.000 Einträge in der Tabelle.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:18 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