WTL之为什么需要WM_NOTIFY?

相关的宏定义

1、COMMAND_HANDLER、COMMAND_ID_HANDLER、COMMAND_CODE_HANDLER、COMMAND_RANGE_HANDLER

2、NOTIFY_HANDLER、NOTIFY_ID_HANDLER、NOTIFY_RANGE_HANDLER、NOTIFY_RANGE_HANDLER

为什么 需要WM_NOTIFY

  对于Windows1.0到Windows3.x,公用WM_COMMANDE就够了。但是当新的Shell组在建立新控件时,组员真的希望发送比控件的ID和通知码更多的信息。不幸的是,WM_COMMAND已经使用了WPARAM和LPARAM的所有位,因此Shell组发明了一个新的消息,这样他们可以用LPARAMv送一个指向结构的指针,将控件ID保存在WPARAM中。另外,一个控件类型对应一个NMHDR子类型,在处理消息把,把NMHDR指针转化为子类型NMHDR,就能够获取更多的信息。例如NMHDR->NMTOOLBAR。

原文地址:https://www.cnblogs.com/tekkaman/p/2049889.html