头文件
#include <windows.h>
#include<cstdio>
using namespace std;
函数格式
MessageBox( HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)
参数
hWnd :此参数代表消息框拥有的窗口。如果为NULL,则消息框没有拥有窗口。
lpText:消息框的内容。如果使用了Unicode库,则把文本变成:
TEXT(/*sometext*/)
lpCaption:消息框的标题。如果使用了Unicode库,则把文本变成:
TEXT(/*sometext*/)
uType:指定一个决定对话框的内容和行为的位标志集。此参数可以为下列标志组中标志的组合。指定下列标志中的一个来显示消息框中的按钮以及图标。
uType参数
按钮
#define MB_OK 0x00000000L
#define MB_OKCANCEL 0x00000001L
#define MB_ABORTRETRYIGNORE 0x00000002L
#define MB_YESNOCANCEL 0x00000003L
#define MB_YESNO 0x00000004L
#define MB_RETRYCANCEL 0x00000005L
按钮参数 | 含义 |
MB_OK | 默认值。有一个确认按钮在里面。 |
MB_YESNO | 有是和否在里面。 |
MB_ABORTRETRYIGNORE | 有Abort(放弃),Retry(重试)和Ignore(跳过) |
MB_YESNOCANCEL | 消息框含有三个按钮:Yes,No和Cancel |
MB_RETRYCANCEL | 有Retry(重试)和Cancel(取消) |
MB_OKCANCEL | 消息框含有两个按钮:OK和Cancel |
图标
MB_ICONHAND = $00000010; //“×”号图标
MB_ICONQUESTION = $00000020; //“?”号图标
MB_ICONEXCLAMATION = $00000030; //“!”号图标
MB_ICONASTERISK = $00000040; //“i”图标
MB_USERICON = $00000080; //用户图标
MB_ICONWARNING = MB_ICONEXCLAMATION; //“!”号图标
MB_ICONERROR = MB_ICONHAND; //“×”号图标
MB_ICONINFORMATION = MB_ICONASTERISK; //“i”图标
MB_ICONSTOP = MB_ICONHAND; //“×”号图标
运行模式
MB_APPLMODAL = $00000000; //应用程序模式,在未结束对话框前也能切换到另一应用程序
MB_SYSTEMMODAL = $00001000; //系统模式,必须结束对话框后,才能做其他操作
MB_TASKMODAL = $00002000; //任务模式,在未结束对话框前也能切换到另一应用程序
MB_HELP = $00004000; //Help Button
函数返回值
0 //对话框建立失败
IDOK = 1 //按确定按钮
IDCANCEL = 2 //按取消按钮
IDABOUT = 3 //按异常终止按钮
IDRETRY = 4 //按重试按钮
IDIGNORE = 5 //按忽略按钮
IDYES = 6 //按是按钮
IDNO = 7 //按否按钮
使用
int type = MessageBox(NULL, "The document has been modified.\n"
"Do you want to save your changes?","Applications",MB_ICONEXCLAMATION | MB_YESNOCANCEL);
使用变量问题
char title[MAX_PATH] ="Applications";
int type = MessageBox(NULL, "The document has been modified.\n"
"Do you want to save your changes?",(LPCSTR)title,MB_ICONEXCLAMATION | MB_YESNOCANCEL);