动态创建控件问题

iorizht 2012-08-30 07:35:17
在循环里动态创建控件,form上可以看到2个panel,分别为panel0和panel1.但是只有panel0上有label, panel1上确没有,不知道为什么。。。 求解,谢谢大家。
procedure TForm1.Button2Click(Sender: TObject);
var
i:integer;
begin
for i := 0 to 1 do
begin
newPanel1(i);
end;
end;

procedure TForm1.newPanel1(i: integer);
var
mypanel :TPanel;
label2 : TLabel;
begin
mypanel := tpanel.Create(self);
mypanel.Parent := form1;
mypanel.Width:=300;
mypanel.Height:=300;
mypanel.Left:=i*(mypanel.Width + 20)+5;
mypanel.Top:=10;
mypanel.Caption := 'panel'+inttostr(i);

label2 := tLabel.Create(mypanel);
label2.Parent := mypanel;
label2.Top:=mypanel.Top + 10;
label2.Width:=100;
label2.AutoSize:=false;
label2.Left:=mypanel.Left+10;
label2.Caption:='点点滴滴'+inttostr(i);
showmessage(inttostr(label2.Parent.Handle));
end;
...全文
306 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuihan20e 2012-08-31
  • 打赏
  • 举报
回复

procedure TForm1.newPanel1(i: integer);
var
mypanel :TPanel;
label2 : TLabel;
begin
mypanel := tpanel.Create(self);
mypanel.Parent := form1;
mypanel.Width:=300;
mypanel.Height:=300;
mypanel.Left:=i*(mypanel.Width + 20)+5;
mypanel.Top:=10;
mypanel.Caption := 'panel'+inttostr(i);


label2 := tLabel.Create(mypanel);
label2.Parent := mypanel;
label2.Top:=10;
label2.Width:=100;
label2.AutoSize:=false;
label2.Left:=10;
label2.Caption:='点点滴滴'+inttostr(i);
showmessage(inttostr(label2.Parent.Handle));
end;
hsfzxjy 2012-08-30
  • 打赏
  • 举报
回复
汗。。楼主你太鸡冻了吧。。
iorizht 2012-08-30
  • 打赏
  • 举报
回复
好用了,太激动了,遇到妖哥比代码问题解决了还激动。妖哥您老人家现在总混CSDN吗?
iorizht 2012-08-30
  • 打赏
  • 举报
回复
诶呀吗呀,妖哥啊。。。。
在2003年的时候您老人家就指导我C++ BUILDER,记忆犹新啊。。。。
好久没用Delphi和c++ builder了,都忘了。。。
在膜拜一下妖哥。。。我去试试代码。
ccrun.com 2012-08-30
  • 打赏
  • 举报
回复
你的Label组件的父窗口是Panel, 那么Label组件的坐标是相对Panel的左上角为原点的,Label的Left就不需要加Panel的Left了。

label2.Top:=mypanel.Top + 10;
label2.Left:=mypanel.Left+10;
改成:
label2.Top := 10;
label2.Left := 10;
即可。
iorizht 2012-08-30
  • 打赏
  • 举报
回复
发错地方了,发通讯版面来了。。。。

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧