鱼C论坛

 找回密码
 立即注册
查看: 2563|回复: 0

[API档案] WM_MEASUREITEM 消息

[复制链接]
发表于 2016-3-26 01:14:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
注:本文档由 n0noper 翻译,小甲鱼校对。

原文链接 -> 传送门

消息含义:

当一个组合框,列表框,列表视图控件或菜单项被创建时,该消息被发送到这些控件或菜单所在的窗口。

窗口会通过它的 WindowProc 函数接收该消息。


消息定义:
#define WM_MENUCHAR                     0x0120

参数解析:

wParam:包含通过 lParam 参数指出 MEASUREITEMSTRUCT 结构体的 CtllD 成员值。

这个值标识发送 WM_MEASUREITEM 消息的控件。如果该值为 0,消息将会通过一个菜单发送。如果该值非 0,消息将会通过一个组合框或列表框发送。如果该值非 0 并且由 lParam 参数所指向的 MEASUREITEMSTRUCT 结构体的 itemID 成员的值为 (UINT)-1 时,消息将会通过一个组合编辑字段发送

lParam:指向一个包含自绘制控件或菜单项的尺寸的 MEASUREITEMSTRUCT 结构体


返回值:

如果应用程序处理了该消息,将会返回 TRUE。


备注:

1. 当所在的窗口接收到 WM_MEASUREITEM 消息时,所在窗口填充该消息的 lParam 参数指向的 MEASUREITEMSTRUCT 结构体并返回,这个消息将会通知系统该控件的面积。如果一个列表框或组合框被创建为 LBS_OWNERDRAWVARIABLE 或 CBS_OWNERDRAWVARIABLE 类型,对于该控件的每一个项都会发送该消息到控件所在窗口,该消息只被发送一次。

2. 系统会在给 OWNERDRAWFIXED 风格创建的组合框和列表框所在的窗口发送 WM_INITDIALOG 消息之前发送 WM_MEASUREITEM 消息。因此,当控件所在窗口收到该消息时,系统还未确定控件所使用字体的高度和宽度,函数调用和计算这些必须值应该发生在应用程序或库的主函数中。


需求:

Minimum supported client Windows 2000 专业版 [仅桌面应用程序]
Minimum supported server Windows 2000 服务器版 [仅桌面应用程序]
Header Winuser.h (包含于 Windows.h)


【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-17 23:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表