[Now Supported on Windows NT]
MessageBoxIndirect功能创建,显示和操作消息框。消息框包含应用程序定义的消息文本和标题,任何图标以及预定义按钮的任意组合。
int MessageBoxIndirect(
LPMSGBOXPARAMS【lpMsgBoxParams】 | //消息框参数的结构地址 |
); |
参数
【lpMsgBoxParams】
指向MSGBOXPARAMS结构的指针,其中包含用于显示消息框的信息。
返回值
如果没有足够的内存创建消息框,返回值为零。
如果函数成功,则返回值是对话框返回的以下菜单项值之一:
值 | 含义 |
IDABORT | 中止按钮被选中。 |
IDCANCEL | 取消按钮被选中。 |
IDIGNORE | 忽略按钮被选中。 |
IDNO | 未选择按钮。 |
IDOK | 确定按钮被选中。 |
IDRETRY | 已选择重试按钮。 |
IDYES | 是按钮被选中。 |
如果消息框具有取消按钮,则如果按下ESC键或选择取消按钮,该函数将返回IDCANCEL值。如果消息框没有取消按钮,按ESC不起作用。
备注
当您使用系统模式消息框来指示系统内存不足时,MSGBOXPARAMS结构lpszText和lpszCaption成员所指向的字符串不应从资源文件中获取,因为尝试加载资源可能会失败。
当应用程序调用{??989796072}并为MSGBOXPARAMS结构的dwStyle成员指定MB_ICONHAND和MB_SYSTEMMODAL标志时,无论可用内存如何,Windows都会显示生成的消息框。指定这些标志时,Windows将消息框文本的长度限制为三行。Windows将【不】自动中断行以适应消息框,因此消息字符串必须包含回车符,以便在适当的位置打破行。
如果在存在对话框时创建消息框,请使用对话框的句柄作为【的hWnd】参数。【的hWnd】参数不应该标识子窗口,例如对话框中的控件。
Windows 95:系统最多可以支持16,364个窗口句柄。
也可以看看