MessageBox

函数原型: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;
}



Comments are closed.