类 属性的问题(0)

  • 主题发起人 主题发起人 lht123
  • 开始时间 开始时间
L

lht123

Unregistered / Unconfirmed
GUEST, unregistred user!
1。定义事件type TNotifyEvent = procedure(Sender: TObject) of object;2。定义类的变量,属性 private FOnDblClick: TNotifyEvent; published property OnDblClick :TNotifyEvent read FOnDblClick write FOnDblClick;3. 在事件激发的位置加:(例:在得到鼠标双击消息的地方) if Assigned(FOnDblClick) then FOnDblClick(Self);我想知道 if Assigned(FOnDblClick) then FOnDblClick(Self); 这个语句起到什么作用了,里面也没有双击的事件啊。
 
Assigned判断指向是否为NIL
 
主要是当你对属性OnDblClick赋值,以就是初始化FOnDblClick后,Assigned(FOnDblClick)为true,调用回调函数FOnDblClick,事实上FOnDblClick相当于一个函数指针,指向你对属性赋的函数,如果未赋值的话,则不调用
 
if Assigned(FOnDblClick) then FOnDblClick(Self);如果 事件已经赋值 那么 运行这个事件这句代码就是大白话,这么简单为什么不能理解,
 
这个属性是个事件,我的意思是 我的button如果有个双击事件,这个属性是怎么给我的button事件的。
 
后退
顶部