在FireMonkey Delphi应用程序中指定运行时颜色时,为什么会出现“未声明的标识符”?

时间:2012-08-15 14:29:07

标签: delphi delphi-xe2 firemonkey

我正在玩我的第一个FireMonkey应用。我已经创建了一个TRectangle的网格,现在我想以编程方式设置每个网格的颜色。我做完了:

procedure TForm9.Button2Click(Sender: TObject);
var
  C : TRectangle;
  I : integer;
//const
//  Alpha = TAlphaColor($FF000000);
//  Red = Alpha or TAlphaColor($FF0000);

begin
  for I := 0 to ScaledLayout1.ChildrenCount-1 do
    begin
    If ScaledLayout1.Children[I] is TRectangle then
      begin
      C := Trectangle(ScaledLayout1.Children[I]);
      C.Fill.Color := Red; <<< ERROR
      C.Fill.Kind := bkSolid <<< ERROR;
      end;
    end;
end;

我在'&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt; ERROR'尝试分配常量'Red'和'bkSolid'。如果我进入System.UITypes并复制出'red',就像上面注释掉的'const'那样,一切正常。然而'System.UITypes'在我的使用列表中。尝试'unidentified identifier'也不起作用。我可能做错了什么? 感谢。

2 个答案:

答案 0 :(得分:4)

TAlphaColor是基数类型,而不是枚举或常量。 TAlphaColors.Red正在工作(请注意AlphaColorS的's'或claRed。 通过bkSolid使用TBrushKind.bkSolid

答案 1 :(得分:1)

在uses子句中插入

用途    System.UIConsts

然后使用ClaRed而不是红色              clawhite代替白色等等..

TBrushKind.bkSolid代替bksolid