如何以编程方式更改Tlabel的FontColor

Arn*_*old 6 delphi label colors firemonkey-fm3 delphi-xe5

当我TLabel在表单上放置时,我可以通过更改FontColor属性来更改其文本的颜色.但是,当我在我的程序中执行此操作时

Label1.FontColor := TAlphaColors.Aquamarine;
Run Code Online (Sandbox Code Playgroud)

这不起作用.知道什么是错的吗?

Nic*_*art 7

要启用修改TLabel对象的字体颜色,您需要更改其StyledSettings属性。

它是一个数组,用于定义由当前样式定义且无法通过其他方式更改的不同设置。

为了能够更改字体的颜色,您必须TStyledSetting.FontColor从此数组中删除该条目。

你可以用编程方式做到这一点

Label1.StyledSettings := Label1.StyledSettings - [TStyledSetting.FontColor];
Run Code Online (Sandbox Code Playgroud)

或从设计器中的对象检查器中,选择您的标签,进入StyledSettings并取消勾选FontColor

当前样式可以修复的其他设置是

  • TStyledSetting.Family
  • TStyledSetting.Size
  • TStyledSetting.Style
  • TStyledSetting.Other

因此,为了能够更改字体颜色和大小,您可以这样写:

Label1.StyledSettings := Label1.StyledSettings - [TStyledSetting.FontColor, TStyledSetting.Size];
Run Code Online (Sandbox Code Playgroud)


Thi*_*Guy 1

将 TLabel 子为 TText 控件。问题解决了 !