如何以编程方式设置自定义 TAlphaColor?

How to set a custom TAlphaColor programmatically?

这基本上就是我在 Delphi

中以编程方式对 colors 进行属性化的方式
label.FontColor      := TAlphaColors.Yellow;

如果我想要像 #FF1C90EF 这样的自定义颜色怎么办?

如何以编程方式设置它?

看来您可以将颜色传递给 TAlphaColor

的新实例

例如,TAlphaColor($FF1C90EF)

话虽如此,您也可以直接设置 .FontColor 属性 而无需创建 TAlphaColor.

的新实例

类似于 VCL 中的 TColorTAlphaColor 只是一个整数(好吧,无论如何都是 Cardinal),因此您可以直接输入十六进制值:

label.FontColor := TAlphaColor($FF1C90EF);

此行为记录在 Embarcadero 的 DocWiki 上:

System.UITypes.TAlphaColor

There are three ways to set a color:

  • Using the predefined constants from System.UIConsts:

    Color := claGreen; //Delphi
    Color = TAlphaColor(claGreen); // C++
    
  • Using the predefined constants from TAlphaColorRec:

    Color := TAlphaColorRec.Green; //Delphi
    Color = TAlphaColor(TAlphaColorRec::Green); // C++
    
  • Using the 4-byte hexadecimal number representation:

    Color := $FF008000;  // Delphi
    Color = TAlphaColor(0xFF008000); // C++
    

您还可以使用 TAlphaColorRec 记录来分配各个组件:

var
  rec: TAlphaColorRec;
begin
  rec.A := $FF;
  rec.R := C;
  rec.G := ;
  rec.B := $EF;
  label.FontColor := rec.Color;
end;