for y:=32 downto 1 do begin
for x := 1 to 16 do begin
PanelArray[x,y]:=TPanel.create(self);
PanelArray[x,y].parent:=self;
PanelArray[x,y].Color:=clBlack;
PanelArray[x,y].Enabled:=true;
PanelArray[x,y].Show;
PanelArray[x,y].BevelOuter:=bvNone;
PanelArray[x,y].OnClick:=Panel1Click;
PanelArray[x,y].Visible:=true;
PanelArray[x,y].width:=10;
PanelArray[x,y].height:=10;
PanelArray[x,y].Refresh;
end;
end;
问问题
689 次
1 回答
3
所有 512 都在创建中,它们只是不可见的。您需要将 ParentBackground 设置为“false”:
for y:=32 downto 1 do begin
for x := 1 to 16 do begin
PanelArray[x,y]:=TPanel.create(self);
///////////
PanelArray[x,y].ParentBackground := false;
///////////
PanelArray[x,y].parent:=self;
PanelArray[x,y].Color:=clBlack;
PanelArray[x,y].BevelOuter:=bvNone;
PanelArray[x,y].OnClick:=Panel1Click;
PanelArray[x,y].width:=10;
PanelArray[x,y].height:=10;
end;
end;
我还删除了您问题中存在的各种不必要的代码行。比如调用Show
and Refresh
,设置Enabled
and Visible
。
于 2017-02-27T16:35:03.737 回答