小甲鱼 发表于 2016-3-27 03:25:09

WM_INITDIALOG 消息

注:本文档由 百日维新 翻译,小甲鱼校对。

原文链接 -> 传送门

消息含义:

WM_INITDIALOG 消息在显示对话框之前发送到对话框。对话框程序通常使用此消息初始化控件和初始化其他对对话框显示有影响的任务。


消息定义:

#define WM_INITDIALOG                   0x0110

参数解析:

wParam:接收默认键盘焦点的控件的句柄。只有当对话框程序返回 TRUE 时,系统分配默认键盘焦点。

lParam:指定额外的初始化数据。此数据是作为调用 CreateDialogIndirectParam, CreateDialogParam, DialogBoxIndirectParam, 或 DialogBoxParam 函数创建对话框时的 lParam 参数传递给系统。属性表中,此参数是一个创建页的 PROPSHEETPAGE 结构的指针。如果使用任何其他对话框创建函数,则此参数将为 0。


返回值:

系统直接设置键盘焦点在被 wParam 参数指定的控件上时,对话框程序应该返回 TRUE;否则,它应该返回 FALSE 以防止系统设置默认键盘焦点(对话框程序应该直接返回该值。被 SetWindowLong 函数设置 DWL_MSGRESULT 值被忽略)。


备注:

1. 接收默认键盘焦点控件总是对话框中第一个是可见的、非禁用的和有 WS_TABSTOP 风格的控件。对话框返回 TRUE 时,系统检查控件确保对话框没有禁用它。如果它被禁用,系统设置键盘焦点到下一个可见的、非禁用的和有 WS_TABSTOP 风格的控件上。

2. 只有设置键盘焦点在对话框的控件上时,应用程序可以返回 FALSE。


需求:


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


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

页: [1]
查看完整版本: WM_INITDIALOG 消息