为什么Dispatch(var Message)这里没有指明类型?(20分)

  • 主题发起人 主题发起人 coolqiang
  • 开始时间 开始时间
C

coolqiang

Unregistered / Unconfirmed
GUEST, unregistred user!
在TObject中有如下两个方法:
procedure Dispatch(var Message); virtual;
procedure DefaultHandler(var Message); virtual;

为何这里的参数Message都没有指明类型?怎样理解它?
 
什么Message都可以
 
相当于TObject
 
李维写的《inside VCL》
里有描述
 
<D5开发人员指南>解释:
这是因为D e f a u l t H a n d l e r ( )假设
参数的头一个词是消息号,而并不关心传递的其他信息。因此,可以把这个参数强制转换为T M e s s a g e
记录,这样就可以访问它的m e s s a g e域。
 
多人接受答案了。
 
后退
顶部