红鱼儿

在fmx下动态生成的TText为什么不能调整大小及字体样式
//为什么会这样呢?类似于下面这样的代码不能生效。
          MyLbl := Ttext.Create(self);
          MyLbl.Parent := VscrbMenuBtn;
          // MyLbl.Font.Size := 20;
          MyLbl.TextSettings.Font.Size := 20;
          MyLbl.Size.PlatformDefault := false;
          MyLbl.TextSettings.Font.Style := [TFontStyle.fsBold];
          MyLbl.Margins.Left := 20;
          MyLbl.Align := TAlignLayout.Top;
    MyLbl.TextSettings.Font.Style := [];
先清空再
MyLbl.TextSettings.Font.Style := [TFontStyle.fsBold];
或者
uses
  FMX.TextLayout, System.UIConsts;

procedure ApplyCustomFontStyle(AText: TText);
var
  TextSettings: TTextSettings;
begin
  // 定义默认的文本样式
  TextSettings := TTextSettings.Create(nil);
  try
    TextSettings.Font.Family := 'Arial';
    TextSettings.Font.Size := 16;
    TextSettings.FontColor := TAlphaColors.Red;

    // 应用自定义样式到指定的 TText 对象
    AText.TextSettings := TextSettings;
  finally
    TextSettings.Free;
  end;
end;

 

posted on 2023-09-12 12:31  红鱼儿  阅读(211)  评论(0编辑  收藏  举报