效果演示:
运行程序弹出以下窗口:
选择:是
选择:否
再次选择:否,会一直弹出此框;
选择:是
函数简介及用法:
MessageBox 指的是显示一个模态对话框,其中包含一个系统图标、 一组按钮和一个简短的特定于应用程序消息,如状态或错误的信息。消息框中返回一个整数值,该值指示用户单击了哪个按钮。
函数:
MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)
参数:
hWnd:
此参数代表消息框拥有的窗口。如果为NULL,则消息框没有拥有窗口。
lpText:
提示框中的内容。
lpCaption:
提示框的标题。
uType:
消息框中的按钮以及图标。
uType参数:
参数 | 出现的按钮 |
---|---|
MB_OK | 确认 |
MB_YESNO | YES(是)、NO(否) |
MB_ABORTRETRYIGNORE | Abort(放弃)、Retry(重试)、Ignore(跳过) |
MB_YESNOCANCEL | Yes、No、Cancel |
MB_RETRYCANCEL | Retry(重试)、Cancel(取消) |
MB_OKCANCEL | OK、Cancel |
返回值
返回值 | 选择按钮 |
---|---|
IDOK | OK |
IDCANCEL | CANCEL |
IDABORT | ABORT |
IDRETRY | ETRY |
IDIGNORE | IGNORE |
IDYES | YES |
IDNO | NO |
程序源码:
#include <tchar.h>
#include <Windows.h>
int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPreInstance, LPTSTR lpCmdLine, INT nShowCmd)
{
UINT nRet = MessageBox(NULL, _T("我喜欢你!"), _T("告诉你一个秘密:"), MB_YESNO);
if (nRet == IDYES)
{
MessageBox(NULL, _T("爱你么么哒!"),_T(""), MB_OK);
}
if (nRet == IDNO)
{
while (1)
{
UINT mRet = MessageBox(NULL, _T("真的喜欢你"), _T("再选择一次嘛:"), MB_YESNO);
if (mRet == IDYES)
{
MessageBox(NULL, _T("我就知道你是爱我的"), _T(" "), MB_OK);
break;
}
}
}
return 0;
}