Einzelnen Beitrag anzeigen

Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#33

AW: TVirtualStringTree AutoFitColumns erste Spalte wird nicht angepasst

  Alt 6. Apr 2017, 12:11
Deshalb bin ich auch der Ansicht, dass ein InvalidateNode keine Auswirkungen auf das Ergebnis von GetMaxColumnWidth haben dürfte.
Das ist vollkommen korrekt. GetMaxColumnWidth() berechnet die maximal benötigte Breite um die NodeTexte darin optimal zu zeichnen. Hierbei kommt es darauf an, ob der Aufrufer die Breite aller NodeTexte und nur die der sichtbaren Nodes möchte.

Ein InvalidateNode führt nur dazu, dass der gesamte Tree neu und dementsprechend die im Hintergrund geänderten Daten auf dem Tree gezeichnet werden. Ein Aufruf vom eigentlichen AutoFitColumns() würde ja praktisch implizit ein Invalidate aufrufen.
  Mit Zitat antworten Zitat