具有CN和WM前缀的消息之间的差异

Fel*_*ais 9 delphi winapi windows-messages

在查看Delphi源代码时,我经常会看到来自Windows API的消息声明,例如CN_NOTIFYWM_NOTIFY.我想知道它们之间的差异以及何时应该使用它们?

Rem*_*eau 12

WM 消息由Win32 API和最终用户代码使用.

CMCN消息由VCL内部使用.

当VCL处理某些WM从Win32 API,例如通知WM_COMMANDWM_NOTIFY,这是从一个子控制发送给它的父窗口中,VCL反映它们作为CN消息(CN_COMMANDCN_NOTIFY)回发送他们孩子.这允许VCL控件处理自己的通知.