首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

动态创建控件的参数有关问题

2012-04-15 
动态创建控件的参数问题动态创建了一个btn控件,然后自定了它的OnClick事件,但参数是固定的Sender:TObject.

动态创建控件的参数问题
动态创建了一个btn控件,然后自定了它的OnClick事件,但参数是固定的Sender:TObject.现在想多加一个参数,不知该如何实现....

原来是:
BTN.OnClick=MyFunc;
procedure   MyFunc(Sender:TObject);

现在想把MyFunc变成
procedure   MyFunc(Sender:TObject,h:integer);
但是BTN.OnClick=MyFunc(h)会错误。请问要实现新的MyFunc该怎么实现啊?

[解决办法]
TButton的OnClick事件类型是这样定义的:
property OnClick: TNotifyEvent;

TNotifyEvent类型是这样定义的:
type TNotifyEvent = procedure (Sender: TObject) of object;

所以OnClick事件函数只能是procedure XXX(Sender: TObject);这样的格式。

不知道楼主想在OnClick事件函数中增加另一个参数是用作何用的?应该有其他解决方法的。
[解决办法]
楼主可以继承TButton类,然后重写OnClick事件.
如果想研究研究的话可以,不是就像jadeluo说的,找其他的解决办法

热点排行