Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.920 Beiträge
 
Delphi 12 Athens
 
#2

AW: Font von 'text' in einem Listboxitem mit style herausfinden

  Alt 25. Jul 2024, 14:37
Ich habe jetzt mal ein bisschen rausbekommen
Folgender code funktioniert anscheinend
Delphi-Quellcode:
  //Maxwidth ermitteln
  var aMaxTextWidth:Extended := 0.0;
  var aTextWidth : Extended := 0.0;
  var Bmp:FMX.Graphics.TBitmap := FMX.Graphics.TBitmap.Create;
  var aFont:TFont := tfont.create;
  var b:byte;
  try
    aFont.Family := aListbox.ListItems[0].StylesData['text.font.family'].asString;
    aFont.Size := aListbox.ListItems[0].StylesData['text.font.size'].AsExtended;
    aListbox.ListItems[0].StylesData['text.font.style'].ExtractRawData(@b);// <-------------ist das richtig
    afont.Style := tFontstyles(b);// <-------------ist das richtig

    Bmp.canvas.Font.Assign(aFont);
    For var i:Integer := 0 to aListbox.Items.Count-1 do
    Begin
      aTextWidth := Bmp.canvas.TextWidth(aListbox.ListItems[i].Text);
      if aTextWidth > aMaxTextWidth then
        aMaxTextWidth := aTextWidth;
    End;
  finally
    Bmp.Free;
    aFont.Free;
  end;
wie mache ich das mit den TFontStyles? Ist das richtig?
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (25. Jul 2024 um 15:00 Uhr)
  Mit Zitat antworten Zitat