Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 如何以编程方式设置自定义颜色?_Delphi_Colors_Firemonkey - Fatal编程技术网

Delphi 如何以编程方式设置自定义颜色?

Delphi 如何以编程方式设置自定义颜色?,delphi,colors,firemonkey,Delphi,Colors,Firemonkey,这就是我在Delphi label.FontColor := TAlphaColors.Yellow; 如果我想要像#FF1C90EF这样的自定义颜色,该怎么办 如何通过编程进行设置?看起来您可以将颜色传递给的新实例 例如,TAlphaColor($FF1C90EF) 话虽如此,您也可以直接设置.FontColor属性,而无需创建TAlphaColor的新实例,类似于VCL中的TColor,TAlphaColor只是一个整数(好吧,反正是一个基数),因此您可以直接键入十六进制值: l

这就是我在
Delphi

label.FontColor      := TAlphaColors.Yellow;
如果我想要像
#FF1C90EF
这样的自定义颜色,该怎么办


如何通过编程进行设置?

看起来您可以将颜色传递给的新实例

例如,
TAlphaColor($FF1C90EF)


话虽如此,您也可以直接设置
.FontColor
属性,而无需创建
TAlphaColor
的新实例,类似于VCL中的
TColor
TAlphaColor
只是一个整数(好吧,反正是一个
基数),因此您可以直接键入十六进制值:

label.FontColor := TAlphaColor($FF1C90EF);
此行为记录在Embarcadero的DocWiki上:

设置颜色有三种方法:

  • 使用System.UIConsts中的预定义常量:

    Color := claGreen; //Delphi
    Color = TAlphaColor(claGreen); // C++
    
  • 使用TAlphaColorRec中的预定义常量:

    Color := TAlphaColorRec.Green; //Delphi
    Color = TAlphaColor(TAlphaColorRec::Green); // C++
    
  • 使用4字节十六进制数字表示法:

    Color := $FF008000;  // Delphi
    Color = TAlphaColor(0xFF008000); // C++
    
您还可以使用
TAlphaColorRec
记录分配各个组件:

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

label.FontColor:=$FF1C90EF会不会是
TAlphaColor($FF1C90EF)?@Holmes会的,是的。我修复了它。还有TAlphaColorRec.Green。为什么我的TAlphaColorRec.Green出现
范围检查错误?@SAMPro没有
TAlphaColorRec.Green
,你是说
TAlphaColorRec.G
还是
TAlphaColorRec.Green
?你的代码看起来是什么样的错误?