为什么TLabel显示不出来啊?
procedure TForm2.FormCreate(Sender: TObject);
begin
with TLabel.Create(Self) do
begin
Name:= 'Label1';
Parent:=Form2;
end;
end;Form2的创建
form2:=Tform2.Create(self);
form2.Show;大家帮帮忙啊
procedure TForm2.FormCreate(Sender: TObject);
begin
with TLabel.Create(Self) do
begin
Name:= 'Label1';
Parent:=Form2;
end;
end;Form2的创建
form2:=Tform2.Create(self);
form2.Show;大家帮帮忙啊
解决方案 »
- 这段VC在DELPHI中这样写对吗?
- 求:系统接口的解决方案
- 求救!ADO有什么好一点的Join查询数据保存提交控件
- 如何在给定的字符串中获得特殊格式的字符串--急
- 怎样在websnap程序中实现重新打开一个窗口的功能??
- dbgrid中显示乱码的问题
- 怎么样删除delphi自带的组件
- 如何在edit中显示按键的字符,如按del键, edit中显示delete
- BDE问题,尽最大可能给分
- 哪里有YOUSFUL FOR DELPHI5(做安装程序用的。)
- 疑惑性能 关于adoquery filter 和 select * from xx where xxx like '%xx%'
- 有关windowsAPI函数的使用?
begin
Name:= 'Label1';
Parent:=Form2;
end;self是指本窗体form1,而你的parent又是form2,有冲突吧?这么修改:var
lb:TLable;
begin
lb:=TLabel.Create(self);
lb.Parent:=Form1;
...
end;
lb:TLable;
begin
lb:=TLabel.Create(nil);
lb.Parent:=Form1;
lb.visible:=true;
lb.Caption:='Hello World!';
...
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2:=Tform2.Create(application);
Form2.Show;
with TLabel.Create(self) do
begin
caption:='aaaaaaaaaaa';
parent:=form2;
end;
end;
控件的创建不能写在模态窗体的OnCreate事件中,不像非模态窗体,本身在程序启动时已经创建,包含在窗体的所有控件也随之创建,模态窗体在运行中动态创建,自己都未创建完成,所以根本谈不上有form2这个对象存在,所以所有在模态窗体OnCreate事件中引用这个窗体对象都是不允许的,但delphi也不报错
没有Caption,显示了也看不出来啊
begin
with TLabel.Create(Self) do
begin
Name:= 'Label1'; Autosize:=false;
width:=50;
color:=clCream;
top:=80;
left:=50;
caption:='nihao';
Parent:=self;//注意着一行,这段程序在tform2.create时候写这时候form2还没有被创建出来当然就不会显示了,如果改成self就可以了
end;
end;
/////