过程类型、方法指针的使用 (100分)

S

so-cool

Unregistered / Unconfirmed
GUEST, unregistred user!
过程类型、方法指针的使用中,为什么给指针赋值的函数只能是当前窗体的私有过程,
而不能是外部过程或全局过程?
  如窗体有一button1,有一个私有过程showMsgIn(sender:Tobject),同时还一个
单元(unit2)中有一过程showMsgOut(sender:Tobject),为什么给Button1.OnClick赋值时,
只能是前者而不是后者,外部过程为什么不行?
 
只要是类的成员方法(过程、函数),不管是私有还是公有的,都是可以赋的,关键的一点是
这个过程必须是某一个类的成员方法。
  我想你说的单元(unit2)中的过程可能是一个全局过程,但它不属于任何类,所以不能
给Button1.OnClick赋值。只要你把这个过程放在一个类中就可以赋值了。
 
没错!但为什么一般的全局过程不行?
 
参数列表不一样啊,要解决就把全局过程变为类的成员函数。
或者是参见beta的一个帖子吧。
 
给分了!
 
顶部