如何触发动态生成的控件的触发事件?
在Delphi中,我用TEdit.Create(hh)创建了一个文本控件hh。
请问:如何定义其触发事件?
请各位大侠不吝赐教,小弟不甚感谢!
问题点数:50、回复次数:5Top
1 楼nhgw(创新!)回复于 2000-11-10 15:25:00 得分 17
为OnClick等属性赋值即可。
如:
ee:TClientSocket;
ee:=TClientSocket.create(self);
ee.host:='127.0.0.1';
ee.active:=true;
ee.OnConnect:=eeConnect; //定义触发事件
ee.OnDisConnect:=...
procedure eeConnect(sender:TObject;socket:TCustomWinSocket); //参数应该与实际事件的参数一致。
begin
...
end;
Top
2 楼sc74()回复于 2000-11-13 12:47:00 得分 0
对不起!
nhgw,可能您误会了。
我提问时用的语法错了,应该是:
var hh:Tedit;
hh.Creat(self);
我问的是在普通的Form上,用代码生成的控件如何定义其触发事件?Top
3 楼delphizhao(昭)回复于 2000-11-13 13:51:00 得分 16
你用的这个语法我也很少见;
TComponent的Create方法的参数是它的保管者.Top
4 楼li_zhifu(东北人)回复于 2000-11-13 14:53:00 得分 17
通常都是这样写:
TForm1=class(TForm)
...
private
procedure MyOnChange(Sender:TObject);
...
var hh:TEdit;
hh:=TEdit.Create(Sefl);
hh.OnChange:=MyOnChange;
...
procedure TForm1.MyOnChange(Sender:TObject);
begin
//你的代码
end;
Top





