delphi - 带有 CN 和 WM 前缀的消息之间的区别
问题描述
在查看 Delphi 源代码时,我经常看到来自 Windows API 的消息声明,例如CN_NOTIFY
和WM_NOTIFY
. 我想知道它们之间的区别以及何时应该使用它们?
解决方案
WM
消息由 Win32 API 和最终用户代码使用。
CM
和CN
消息由 VCL 内部使用。
当 VCL 处理WM
来自 Win32 API 的某些通知时,例如从子控件发送到其父窗口的 和 ,VCL 将它们作为消息 ( 和 ) 反映给WM_COMMAND
发送它们的子控件。这允许 VCL 控件处理自己的通知。WM_NOTIFY
CN
CN_COMMAND
CN_NOTIFY
推荐阅读
- javascript - 一个对象怎么可能有一个属性,但访问它会导致 ReferenceError?
- spring-boot - 有没有办法在使用 SpringCloud OpenFeign 时为每个 Feign 实例创建不同的客户端?
- javascript - 让 Vue.js 同步隐藏和切换 css 类
- python - 使用 Apache Beam 以 CSV 格式将 BigQuery 结果写入 GCS 时出现编码问题
- angular - Angular v11 中的自动按钮单击功能
- spring - PayPal v2 Orders API - OrdersGetRequest 和 OrdersCaptureRequest 之间的区别
- c# - 找不到与参数名称“全部”匹配的参数 c#
- java - 如何在 jmh 基准测试中抑制打印到控制台的方法的输出?
- sql - 按月分组后找到最高值
- matlab - 如何在 MatLab 中为我的用户输入功能添加“全部”术语?