3

我正在玩我的第一个 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;

'unidentified identifier'我在尝试分配常量“Red”和“bkSolid”时遇到编译器错误。如果我进入 System.UITypes 并按照上面注释掉的“const”复制出“Red”,那么一切正常。然而,“System.UITypes”在我的使用列表中。尝试C.Fill.Color := TAlphaColor.Red也不行。请问我可能做错了什么?谢谢。

4

2 回答 2

4

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

于 2012-08-15T15:08:07.587 回答
1

在uses子句中插入

用途 System.UIConsts

然后用ClaRed红色 clawhite代替白色等等..

TBrushKind.bkSolid不是bksolid

于 2015-09-18T13:28:07.390 回答