我定义了一个类 在窗口中建立的时候不能显示出来 不知道如何 单击按钮建立了类的对象 但类中的label和image不能在窗口中显示出来 高手帮忙
my2=class(TWinControl)
private
tex: Tlabel;
pic: Timage;
public
procedure init(AOwner: TComponent; AParent: TWinControl);
end; implementation
procedure my2.init;
begin
tex:=Tlabel.Create(AOwner);
tex.Parent:=AParent;
tex.Caption:='hehe';
tex.Visible:=true;
pic:=Timage.Create(AOwner);
pic.Picture.LoadFromFile('logo.jpg');
pic.Parent:=AParent;
pic.Visible:=true;
end; 窗口中我是这样使用这个类的
sz: array of my2;
implementation {$R *.dfm} procedure TForm1.BitBtn1Click(Sender: TObject);
var
lable: my2;
begin
i := i + 1;
SetLength(sz,i);
lable := my2.Create(self);
lable.Parent:=form1;
lable.Top:=i*10;
lable.Left:=i*6;
sz[i-1] := lable;
label1.Caption:=inttostr(i);
end;
my2=class(TWinControl)
private
tex: Tlabel;
pic: Timage;
public
procedure init(AOwner: TComponent; AParent: TWinControl);
end; implementation
procedure my2.init;
begin
tex:=Tlabel.Create(AOwner);
tex.Parent:=AParent;
tex.Caption:='hehe';
tex.Visible:=true;
pic:=Timage.Create(AOwner);
pic.Picture.LoadFromFile('logo.jpg');
pic.Parent:=AParent;
pic.Visible:=true;
end; 窗口中我是这样使用这个类的
sz: array of my2;
implementation {$R *.dfm} procedure TForm1.BitBtn1Click(Sender: TObject);
var
lable: my2;
begin
i := i + 1;
SetLength(sz,i);
lable := my2.Create(self);
lable.Parent:=form1;
lable.Top:=i*10;
lable.Left:=i*6;
sz[i-1] := lable;
label1.Caption:=inttostr(i);
end;
lable.init(nil,lable.Parent);
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; my2=class(TWinControl)
private
tex: Tlabel;
pic: Timage;
public
constructor create(AOwner: TComponent; AParent: TWinControl);
//procedure Create(aOwner : Tcomponent);
end;var
Form1: TForm1;implementation{$R *.dfm}{ my2 }constructor my2.create(AOwner: TComponent; AParent: TWinControl);
begin
tex:=Tlabel.Create(AOwner);
tex.Parent:=AParent;
tex.Caption:='hehe';
tex.Visible:=true;
pic:=Timage.Create(AOwner);
//pic.Picture.LoadFromFile('logo.jpg');
pic.Parent:=AParent;
pic.Visible:=true;
end;procedure TForm1.Button1Click(Sender: TObject);
var
lable: my2;
i : integer;
begin
i := i + 1;
// SetLength(sz,i);
lable := my2.create(Self,Form1); // lable.Top:=i*10;
// lable.Left:=i*6;
// sz[i-1] := lable;
// label1.Caption:=inttostr(i);end;end.