文章目录
- 1.函数功能
- 2.返回值
- 3.示例
1.函数功能
显示一个模式对话框,其中包含系统图标、一组按钮和一条简短的应用程序特定消息,例如状态或错误信息。 消息框返回一个整数值,该值指示用户单击的按钮。
int MessageBoxA([in, optional] HWND hWnd,[in, optional] LPCSTR lpText,[in, optional] LPCSTR lpCaption,[in] UINT uType
);
参数
[in, optional] hWnd
类型:HWND
要创建的消息框的所有者窗口的句柄。 如果此参数为 NULL,则消息框没有所有者窗口。
[in, optional] lpText
类型: LPCTSTR
要显示的消息。 如果字符串由多个行组成,则可以使用回车符和/或每行之间的换行符分隔这些行。
[in, optional] lpCaption
类型: LPCTSTR
对话框标题。 如果此参数为 NULL,则默认标题为 Error。
[in] uType
类型: UINT
对话框的内容和行为。 此参数可以是以下标志组中的标志的组合。
若要指示消息框中显示的按钮,请指定以下值之一。
MB_TOPMOST附加此标记为顶层窗口。
2.返回值
返回值
类型: int
如果消息框有“取消”按钮,则如果按下 ESC 键或选择“取消”按钮,该函数将返回 IDCANCEL 值。 如果消息框没有 “取消 ”按钮,则按 ESC 将不起作用 - 除非存在MB_OK按钮。 如果显示MB_OK按钮,并且用户按下 ESC,则返回值将为 IDOK。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
如果函数成功,则返回值是以下菜单项值之一。
返回代码/值 说明
IDABORT
3
已选择 “中止 ”按钮。
IDCANCEL
2
已选择 “取消 ”按钮。
IDCONTINUE
11
已选择 “继续 ”按钮。
IDIGNORE
5
已选择 “忽略 ”按钮。
IDNO
7
已选择 “无 ”按钮。
IDOK
1
已选择“ 确定 ”按钮。
IDRETRY
4
已选择 “重试 ”按钮。
IDTRYAGAIN
10
已选择 “重试 ”按钮。
IDYES
6
已选择“ 是 ”按钮。
3.示例
在以下示例中,应用程序会显示一个消息框,提示用户在发生错误条件后执行操作。 消息框显示描述错误条件以及如何解决错误条件的消息。 MB_CANCELTRYCONTINUE样式指示 MessageBox 提供三个按钮,用户可以选择如何继续操作。 MB_DEFBUTTON2样式将默认焦点设置为消息框的第二个按钮,在本例中为“重试”按钮。
int DisplayResourceNAMessageBox()
{int msgboxID = MessageBox(NULL,(LPCWSTR)L"Resource not available\nDo you want to try again?",(LPCWSTR)L"Account Details",MB_ICONWARNING | MB_CANCELTRYCONTINUE | MB_DEFBUTTON2);switch (msgboxID){case IDCANCEL:// TODO: add codebreak;case IDTRYAGAIN:// TODO: add codebreak;case IDCONTINUE:// TODO: add codebreak;}return msgboxID;
}