Einzelnen Beitrag anzeigen

Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.130 Beiträge
 
Delphi 10.3 Rio
 
#14

AW: Firemonkey TEdit mit Autosize?

  Alt 6. Jan 2015, 11:38
Soderle...

Hätte man auch finden können...
Der Trick ist:

Delphi-Quellcode:
var
  TextLayout : TTextLayout;
...

begin
  TextLayout := TTextLayoutManager.DefaultTextLayout.Create; // ImCreate
  
  FreeAndNil(TextLayout); // Im destroy
end;
und ein bisschen Init..

Delphi-Quellcode:
procedure InitTextLayout;
begin
  TextLayout.MaxSize := TPointF.Create(1000,1000);//TextObject.Width, TextObject.Height);
  TextLayout.HorizontalAlign := TTextAlign.Leading;
  TextLayout.VerticalAlign := ResultingTextSettings.VertAlign;
  TextLayout.Font := ResultingTextSettings.Font;
end;
und schon geht

Delphi-Quellcode:
function TextWidth(const AText: String): Single;
begin
  TextLayout.Text := AText;
  Result := TextLayout.TextRect.Width;
end;
Normalerweise TextObject.X aber meine Ableitung hat kein Textobject daher 1000,1000

Grüsse Mavarik
  Mit Zitat antworten Zitat