函数原型:int MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)
函数功能:创建、显示和操作一个消息框。消息框含有应用程序定义的消息标题和内容,加上预定义图标与按钮的任何组合。
hWnd标识将被创建的消息框的拥有窗口。如果此参数为NULL,则消息框没有拥有窗口。
lpText消息框内容,lpCaption消息框标题,uType指定一个决定对话框的内容和行为的位标志集。
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
MessageBox(NULL, TEXT(”Hello, windows!”), TEXT(”Msg”), MB_OK);
return 0;
}
有关uType取值可查看winuser.h。
/*
* MessageBox() Flags
*/
#define MB_OK 0×00000000L
#define MB_OKCANCEL 0×00000001L
#define MB_ABORTRETRYIGNORE 0×00000002L
#define MB_YESNOCANCEL 0×00000003L
#define MB_YESNO 0×00000004L
#define MB_RETRYCANCEL 0×00000005L
#define MB_ICONHAND 0×00000010L
#define MB_ICONQUESTION 0×00000020L
#define MB_ICONEXCLAMATION 0×00000030L
#define MB_ICONASTERISK 0×00000040L
注意到不同取值的分组位规律,采用按位或运算“|”进行组合。
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
int choice = MessageBox(NULL, TEXT(“你是好人吗?”), TEXT(“你是好人吗?”), MB_YESNO | MB_ICONQUESTION | MB_DEFBUTTON2);
switch(choice)
{
case IDYES:
MessageBox(NULL, TEXT(“一看你就不是好人,点击【确定】开始格式化C盘!”), TEXT(“是”), MB_OK | MB_ICONWARNING);
break;
case IDNO:
MessageBox(NULL, TEXT(“尝试把你变成好人失败,是否重试?”), TEXT(“否”), MB_RETRYCANCEL);
break;
default:
;
}
return 0;
}