如何colo(u)r动态创建面板?

Maw*_*awg 1 delphi

ToolStatusPanel2在设计时声明了一个面板,并希望添加10个代表状态的面板,以颜色显示.

现在,我的主要表格声明

 ToolOnlineStatusPanel : Array[0..Pred(NUM_TOOLS)] of TPanel;
Run Code Online (Sandbox Code Playgroud)

FormCreate想将它们设置为默认的颜色clRed

for i:= 0 to Pred(NUM_TOOLS) do
begin
  ToolOnlineStatusPanel[i] := TPanel.Create(ToolStatusPanel2);
  ToolOnlineStatusPanel[i].Parent := ToolStatusPanel2;
  ToolOnlineStatusPanel[i].Height := 16;
  ToolOnlineStatusPanel[i].Width := 16;
  ToolOnlineStatusPanel[i].Top := 8 + (i * (16 + 8));
  ToolOnlineStatusPanel[i].Left := 8;
  ToolOnlineStatusPanel[i].Color := clRed;
end;
Run Code Online (Sandbox Code Playgroud)

但这些儿童小组总是和他们的父母有相同的颜色,即使我改变了 - 从不红色.

显然我忽略了一些相当简单的事情.它是什么?谢谢

NGL*_*GLN 5

设为ParentBackground假.

  • +1和答案.我爱你,想拥有我们的孩子. (3认同)