Owner参数负责释放控件比如你在创建一个对象时会使用如下的语句var Obj:TObject; begin Obj:=TObject.Create(Form1); //这里Create函数的参数Owner指向了窗体本身,所以这个对象在窗体释放的时候有窗体负责释放,呵呵,有点拗口! end;至于Parent,主要用来负责绘画子控件例如,在程序运行的时候你可能会动态的生成一个Label,所以var MyLbl:TLabel; begin MyLbl:=TLabel.Create(Form1); MyLbl.Parent:=Form1; //如果不加这句,你创建的Label是不会显示的!!!! end;最后,关于你说的VCL和CLX,我只知道CLX是用来建立跨平台APP的,具体没有用过,不敢评论。如何区分一个程序是用了VCL还是CLX,我看只能看程序引用的单元了吧!
请问在如下代码中 procedure TForm1.Button1Click(sender:Tobject); var MyLbl:TLabel; begin MyLbl:=TLabel.Create(self); MyLbl.Parent:=self; end;1.这里的self是指Tform1还是Tlabel? 2.MyLbl.Parent:=self;与MyLbl.Parent:=form1有和区别?
Obj:TObject;
begin
Obj:=TObject.Create(Form1);
//这里Create函数的参数Owner指向了窗体本身,所以这个对象在窗体释放的时候有窗体负责释放,呵呵,有点拗口!
end;至于Parent,主要用来负责绘画子控件例如,在程序运行的时候你可能会动态的生成一个Label,所以var
MyLbl:TLabel;
begin
MyLbl:=TLabel.Create(Form1);
MyLbl.Parent:=Form1; //如果不加这句,你创建的Label是不会显示的!!!!
end;最后,关于你说的VCL和CLX,我只知道CLX是用来建立跨平台APP的,具体没有用过,不敢评论。如何区分一个程序是用了VCL还是CLX,我看只能看程序引用的单元了吧!
procedure TForm1.Button1Click(sender:Tobject);
var
MyLbl:TLabel;
begin
MyLbl:=TLabel.Create(self);
MyLbl.Parent:=self;
end;1.这里的self是指Tform1还是Tlabel?
2.MyLbl.Parent:=self;与MyLbl.Parent:=form1有和区别?