Einzelnen Beitrag anzeigen

moe120

Registriert seit: 1. Okt 2012
Ort: Radeberg
34 Beiträge
 
Delphi XE6 Enterprise
 
#10

AW: Länge eines Strings in Pixel?

  Alt 15. Feb 2013, 14:29
ohne einen schon ewig geschlossenen Thread wieder aufwärmen zu wollen
eine Anmerkung noch:

unter Delphi XE2/3 Firemonkey klappt der Tipp mit dem Label auf der Form nur dann, wenn es auch visible ist. Ansonsten wird label.width nicht aktualisiert, egal was man da an Text reinpackt und was man auch probiert.

meine Lösung war dafür:
- Label auf Form packen
- visible auf true, Opacity = 0, autosize = true
- zur Laufzeit: label.Text + label.Font ändern auf das was man ermitteln möchte
- dann ganz wichtig: label.updateStyle einmal aufrufen
- erst dann kann mit label.width die Breite in Pixel abgelesen werden, vorher steht sonst noch der original width-Wert der Entwurfszeit drin

Geändert von moe120 (15. Feb 2013 um 16:29 Uhr)
  Mit Zitat antworten Zitat