刚刚学会怎样动态生成控件,但是不知道怎样往这些动态生成控件里添加事件,有哪位给我举个例,如下:
procedure TForm1.FormCreate(Sender: TObject);
var
a:tbutton;
begin
a:=tbutton.Create(self);
with a do
begin
Top:=100;
Left:=100;
Height:=20;
Width:=100;
Parent:=form1;
OnClick:=//.....该怎样写了?或者应该用别的方法
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
a:tbutton;
begin
a:=tbutton.Create(self);
with a do
begin
Top:=100;
Left:=100;
Height:=20;
Width:=100;
Parent:=form1;
OnClick:=//.....该怎样写了?或者应该用别的方法
end;
end;
begin
ShowMessage('AA');
end;procedure TForm1.FormCreate(Sender: TObject);
begin
Button1.OnClick := ButtonClick;
end;————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
begin
ShowMessage('OK');
end;procedure TForm1.FormCreate(Sender: TObject);
var
a:tbutton;
begin
a:=tbutton.Create(self);
with a do
begin
Top:=100;
Left:=100;
Height:=20;
Width:=100;
Parent:=form1;
OnClick:=YourClick;
end;
end;
在你动态生成的控件的OnClick事件指向他就可以调用了
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure myClick(Sender:TObject);
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
a:TButton;
begin
a:=TButton.Create(nil);
a.top:=button1.Top;
a.left:=button1.Left+100;
a.width:=200;
a.Caption:='this is my fisrst';
a.Visible:=true;
a.Parent :=form1;
a.onClick :=myClick;
end;
procedure TForm1.myClick(sender:TObject) ;
begin
showMessage('hellow');
end;
end.