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

fcwjkofz  于 2022-11-29  发布在  其他
关注(0)|答案(4)|浏览(186)

当我将TLabel放在窗体上时,我可以通过更改FontColor属性来更改其文本的颜色。

Label1.FontColor := TAlphaColors.Aquamarine;

这不管用,知道出什么问题了吗

s4chpxco

s4chpxco1#

要修改TLabel对象的字体颜色,需要更改其StyledSettings属性。
它是一个数组,用于定义由当前样式定义且无法通过其他方式更改的不同设置。
要更改字体的颜色,必须从该数组中删除TStyledSetting.FontColor项。
您可以通过编程方式使用

Label1.StyledSettings := Label1.StyledSettings - [TStyledSetting.FontColor];

或者从设计器的对象检查器中选择标签,进入StyledSettings并取消选中FontColor
当前样式可以修复的其他设置包括

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

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

Label1.StyledSettings := Label1.StyledSettings - [TStyledSetting.FontColor, TStyledSetting.Size];
ecbunoof

ecbunoof2#

为TText控件订阅TLabel。问题解决了!

iszxjhcz

iszxjhcz3#

我刚刚尝试了来自@NicolasDusart的答案,发现一个TLabel似乎没有StyledSettings。我猜这在 Delphi 的新版本中改变了,我目前使用的是Delphi东京。然而,有了这个我能够改变字体颜色:

Label1.StyleElements := Label1.StyleElements - [seFont];

Delphi 文档将TStyleElements列为如下设置:

type TStyleElements = set of (seFont, seClient, seBorder);

Vcl.Controls.TStyleElements

uxh89sit

uxh89sit4#

我们可以通过编程方式更改TLabel颜色,如下所示:

Label1.Font.Color := clBlue;

相关问题