函数原型:
int MessageBox( HWND hWnd, LPCTSTR lpText, LPCSTR lpCaption,UINT uStyle );
注:应先将项目属性中的字符集属性改为多字符集(Unicode)。
消息框函数有4 个参数:
- hwnd: 父窗口的句柄,为NULL,说明消息框没有父窗口,大多数情况下可以省略不写
- lpText: 指向要显示字符串的指针,对话框上显示的信息
- lpCaption: 消息框的标题,即提示框上部分显示的内容
- uStyle: 消息框的内容和形为(即该消息框有几个按钮、文本对齐等状态,可以在20多个属性值中进行组合)
uStyle可以是在WINUSER.H中定义的一组前缀以MB_开始的常数组合
可以使用"或"(|)运算符将下面显示的三组中各选一个常数组合起来指定消息框的内容和形为:
// 显示哪些按钮: #define MB_OK 0X00000000L #define MB_OKCANCEL 0X00000001L #define MB_ABORTRERYGNORE 0X00000002L #define MB_YESNOCANCEL 0X00000003L #define MB_YESNO 0X00000004L #define RERYCANCEL 0X00000005L // 焦点在哪个按钮上: #define MB_DEFBUTTON1 0X00000000L #define MB_DEFBUTTON2 0X00000100L #define MB_DEFBUTTON3 0X00000200L #define MB_DEFBUTTON4 0X00000300L // 图示的外观: #define MB_ICONHAND 0x00000010L #define MB_ICONQUESTION 0x00000020L #define MB_ICONEXCLAMATION 0x00000030L #define MB_ICONASTERISK 0x00000040L //图示的某些有替代名称: #define MB_ICONWARNING MB_ICONEXCLAMATION #define MB_ICONERROR MB_ICONHAND #define MB_ICONINFORMATION MB_ICONASTERISK #define MB_ICONSTOP MB_ICONHAND
示例:
MessageBox(NULL, "Hello, Windows!","hello", MB_OK ); MessageBox(NULL, "Hello, Windows!","HelloMsg", MB_YESNO|MB_ICONEXCLAMATION) ; MessageBox(NULL, "Hello, Windows!","HelloMsg", MB_YESNO|MB_DEFBUTTON1) ;//表示窗口出来后焦点 focus落在Yes(第一个)按钮上 返回值: IDOK -- 1 IDCANCEL -- 2 IDABORT -- 3 IDRETRY -- 4 IDIGNORE -- 5 IDYES -- 6 IDNO -- 7