C++ 控制台窗口中MessageBox() 的用法

简介: C++ 控制台窗口中MessageBox() 的用法

例程:

#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
  for(int i=1;i<=2;i++){
    i = MessageBox(NULL, "输出内容?", "对话框标题", MB_OKCANCEL);
    if(i==IDOK) cout<<"IDOK = "<<i<<endl;
    if(i==IDCANCEL) cout<<"IDCANCEL = "<<i<<endl;
  }
  return 0; 
}

用法:

一、函数原型及参数
 int MessageBox(hWnd: HWND; Text, Caption: PChar; Type: Word);
 hWnd:对话框父窗口句柄,控制台窗口中直接用NULL。
 Text:显示的信息字符串。
 Caption:对话框标题字符串。
 Type:对话框类型常量。
 该函数的返回值为整数,用于对话框按钮的识别。
二、类型常量
 对话框的类型常量可由按钮组合、缺省按钮、显示图标、运行模式四种常量组合而成。
(1)按钮组合常量
 MB_OK = $00000000;                //一个确定按钮
 MB_OKCANCEL = $00000001;          //一个确定按钮,一个取消按钮
 MB_ABORTRETRYIGNORE = $00000002; //一个异常终止按钮,一个重试按钮,一个忽略按钮
 MB_YESNOCANCEL = $00000003;       //一个是按钮,一个否按钮,一个取消按钮
 MB_YESNO = $00000004;             //一个是按钮,一个否按钮
 MB_RETRYCANCEL = $00000005;    //一个重试按钮,一个取消按钮
(2)缺省按钮常量
 MB_DEFBUTTON1 = $00000000;     //第一个按钮为缺省按钮
 MB_DEFBUTTON2 = $00000100;     //第二个按钮为缺省按钮
 MB_DEFBUTTON3 = $00000200;     //第三个按钮为缺省按钮
 MB_DEFBUTTON4 = $00000300;     //第四个按钮为缺省按钮
(3)图标常量
 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;       //“×”号图标
 (4)运行模式常量
 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         //按否按钮
目录
相关文章
|
16天前
|
定位技术 C++ Windows
第一人称射击游戏 C++控制台版(未完成)
第一人称射击游戏 C++控制台版(未完成)
第一人称射击游戏 C++控制台版(未完成)
|
25天前
|
存储 C++
C++初阶学习第十一弹——探索STL奥秘(六)——深度刨析list的用法和核心点
C++初阶学习第十一弹——探索STL奥秘(六)——深度刨析list的用法和核心点
24 7
|
23天前
|
存储 人工智能 C++
map容器在C++中的具体用法以及相关注意点
map容器在C++中的具体用法以及相关注意点
19 1
|
3天前
|
程序员 API 对象存储
技术心得记录:控制台——对窗口句柄的操作
技术心得记录:控制台——对窗口句柄的操作
|
6天前
|
C++ UED 开发者
逆向学习 MFC 篇:视图分割和在 C++ 的 Windows 窗口程序中添加图标的方法
逆向学习 MFC 篇:视图分割和在 C++ 的 Windows 窗口程序中添加图标的方法
7 0
|
16天前
|
C++
俄罗斯方块 C++控制台版
俄罗斯方块 C++控制台版
|
2月前
|
存储 C++ 容器
C++标准库容器的基本用法
C++标准库容器的基本用法
21 0
|
2月前
|
安全 程序员 C++
C++ new和delete的用法
需要注意的是,使用 `new`和 `delete`分配和释放内存时,程序员负责管理内存的分配和释放,这可能导致内存泄漏或释放已释放内存的问题。因此,C++引入了智能指针(如 `std::shared_ptr`和 `std::unique_ptr`)以更安全和自动化地管理内存。
46 2
|
2月前
|
编译器 C++
【C++】【C++的常变量取地址问题(对比C的不同)】const修饰的常变量&volatile修饰用法详解(代码演示)
【C++】【C++的常变量取地址问题(对比C的不同)】const修饰的常变量&volatile修饰用法详解(代码演示)
|
2月前
|
Linux Shell 开发工具
C++ 的 ini 配置文件读写/注释库 inicpp 用法 [ header-file-only ]
这是一个C++库,名为inicpp,用于读写带有注释的INI配置文件,仅包含一个hpp头文件,无需编译,支持C++11及以上版本。该库提供简单的接口,使得操作INI文件变得容易。用户可通过`git clone`从GitHub或Gitee获取库,并通过包含`inicpp.hpp`来使用`inicpp::iniReader`类。示例代码展示了读取、写入配置项以及添加注释的功能,还提供了转换为字符串、双精度和整型的函数。项目遵循MIT许可证,示例代码可在Linux环境下编译运行。
80 0