我在程序中动态生成了一个按钮,想定义其鼠标点击事件
于是用了
btnOne.OnClick:=OneClick(Sender:TObject);//OneClick(Sender:TObject)是我自定义的过程
这段代码,但编译失败,如果将冒号去掉,提示说参数不足,
我查了帮助,好象OnClick类型为TNofiyEvernt,但不懂用法,好象是什么函数指针什么的?
于是用了
btnOne.OnClick:=OneClick(Sender:TObject);//OneClick(Sender:TObject)是我自定义的过程
这段代码,但编译失败,如果将冒号去掉,提示说参数不足,
我查了帮助,好象OnClick类型为TNofiyEvernt,但不懂用法,好象是什么函数指针什么的?
btnOne.OnClick:=OneClick(Sender);
就是说OneClick是一个对象的方法,而不能是独自一个过程
are you see?
btnone.onclick:=oneclick(nil)
??????
begin
//你的处理代码.
end;
//你动态创建代码
var
MyButton : TButton;
begin
MyButton := TButton.Create(self);
with MyButton do
beign
Parent := XXX;//你的Button的父控件名.
Left := 10;
Top := 10;
width := 75;
height := 25;
visible := true;
Onclick := MyButtonClicked;
end;
end;
if lwercase(sender.ClassName) = 'tlabel' then
begin
//你的处理代码
end;
或者:
if Sender is TLabel then
begin
//你的代码.
end;
begin
with Sender as Tbutton do
begin
Caption := 'XXX';
end;
end;