MessageBox使用

这篇具有很好参考价值的文章主要介绍了MessageBox使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

MessageBox

MessageBox()函数,功能是弹出一个标准的Windows对话框(模态对话框)。包含一个系统图标、 一组按钮和一个简短的特定于应用程序消息,如状态或错误的信息。返回值是一个int型的整数,用于判断用户点击了对话框中的哪一个按钮。它不是C函数库的标准函数,而是API函数,但是可以用C语言调用API函数。

函数原型

包含在头文件 windows.h中

int MessageBox( HWND hWnd,LPCTSTR lpText, LPCTSTR lpCaption = NULL, UINT nType = MB_OK );

参数

  • 第一个参数:hWnd
    该参数是一个窗口句柄,指定该对话框的所有者窗口。如果该参数为空(0/NULL),则该对话框不属于任何窗口。
  • 第二个参数:lpText
    该参数是一个字符串,指显示在对话框中的内容。
  • 第三个参数:lpCaption
    也是是一个字符串,指对话框的标题。如果此参数为空,则默认使用“错误”作为标题
  • 第四个参数:nType
    指定显示按钮的数目及形式,使用的图标样式,缺省按钮是什么以及消息框的强制回应等。
nType参数

1、按钮

MB_OK 默认值。有一个确认按钮在里面。
MB_YESNO 显示是和否在里面。
MB_OKCANCEL 消息框显示两个按钮:OK和Cancel
MB_ABORTRETRYIGNORE 显示Abort(放弃),Retry(重试)和Ignore(跳过)
MB_YESNOCANCEL 消息框显示三个按钮:Yes,No和Cancel
MB_RETRYCANCEL 显示Retry(重试)和Cancel(取消)

2、图标

MB_ICONEXCLAMATION, MB_ICONWARNING 一个惊叹号出现在消息框
MB_ICONINFORMATION,MB_ICONASTERISK 一个圆圈中小写字母i组成的图标出现在消息框
MB_ICONQUESTION 一个问题标记图标出现在消息框
MB_ICONSTOP,MB_ICONERROR,MB_ICONHAND 一个停止消息图标出现在消息框

3、形态

MB_APPLMODAL 在hwnd参数标识的窗口中继续工作以前,用户一定响应消息框。但是,用户可以移动到其他线程的窗口且在这些窗口中工作。根据应用程序中窗口的层次机构,用户则以移动到线程内的其他窗口。所有母消息框的子窗口自动地失效,但是弹出窗口不是这样。如果既没有指定MB_SYSTEMMODAL也没有指定MB_TASKMOOAL,则MB_APPLMODAL为缺省的。
MB_SYSTEMMODAL 除了消息框有WB_EX_TOPMOST类型,MB_APPLMODAL和MB_SYSTEMMODAL一样。用系统模态消息框来改变各种各样的用户,主要的损坏错误需要立即注意(例如,内存溢出)。如果不是那些与hwnd联系的窗口,此标志对用户对窗口的相互联系没有影响。
MB_TASKMODAL 如果参数hwnd为NULL的话,那么除了所有属于当前线程高层次的窗口失效外,MB_TASKMODALL和MB_APPLMODAL一样。当调用应用程序或库没有一个可以得到的窗口句柄时,使用此标志。但仍需要阻止输入到调用线程的其他窗口,而不是搁置其他线程。

4、其他

MB_DEFAULT_DESKTOP_ONLY 接收输入的当前桌面一定是一个缺省桌面。否则,函数调用失败。缺省桌面是一个在用户已经纪录且以后应用程序在此上面运行的桌面。
MB_HELP 把一个Help按钮增加到消息框。选择Help按钮或按F1产生一个Help事件。
MB_RIGHT 文本右对齐
MB_RTLREADING 用在Hebrew和Arabic系统中从右到左的顺序显示消息和大写文本。
MB_SETFOREGROUND 消息框变为前景窗口。在内部系统为消息个调用SetForegroundWindow函数。
MB_TOPMOST 消息框用WS_EX_TOPMOST窗口类型来创建MB_SERVICE_NOTIFICATION。

注:同时设置多个项是,不同的代号用 '| '连接。如:MB_OK | MB_ICONQUESTION

返回值

ID 选择结果 返回值
IDOK OK 1
IDCANCEL CANCEL 2
IDABORT ABORT 3
IDRETRY RETRY 4
IDIGNORE IGNORE 5
IDYES YES 6
IDNO NO 7

实例

MessageBox(m_hWnd , _T("最简单的消息框!"));

MessageBox(m_hWnd,_T("有标题的消息框!"),_T("标题")); 

MessageBox(m_hWnd,_T("确定 取消的消息框!"),_T("标题"), MB_OKCANCEL ); 

MessageBox(m_hWnd,_T("警告的消息框!"),_T("标题"), MB_ICONEXCLAMATION ); 

MessageBox(m_hWnd,_T("两种属性的消息框!"),_T("标题"), MB_ICONEXCLAMATION|MB_OKCANCEL ); 

//在这里使用“_T”标注为使用Unicode,防止因为有的兼容问题而编译不过。
//第一个参数也可以省略

MessageBox("错误!", "提示", MB_OK| MB_ICONWARNING);

messagebox怎么使用,windows,c++,mfc

MessageBox("错误!", "提示", MB_YESNO| MB_ICONASTERISK);

messagebox怎么使用,windows,c++,mfc

MessageBox("错误!", "提示", MB_OKCANCEL | MB_ICONQUESTION);

messagebox怎么使用,windows,c++,mfc

MessageBox("错误!", "提示", MB_ABORTRETRYIGNORE | MB_ICONSTOP);

messagebox怎么使用,windows,c++,mfc

MessageBox("错误!", "提示", MB_YESNOCANCEL | MB_ICONINFORMATION);

messagebox怎么使用,windows,c++,mfc

MessageBox("错误!", "提示", MB_RETRYCANCEL | MB_ICONEXCLAMATION);

messagebox怎么使用,windows,c++,mfc文章来源地址https://www.toymoban.com/news/detail-772586.html

到了这里,关于MessageBox使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ElementUI浅尝辄止25:MessageBox 弹框

    模拟系统的消息提示框而实现的一套模态对话框组件,用于消息提示、确认消息和提交内容。 从场景上说,MessageBox 的作用是美化系统自带的  alert 、 confirm  和  prompt ,因此适合展示较为简单的内容。如果需要弹出较为复杂的内容,还是要使用 Dialog。 当用户进行操作时会

    2024年02月10日
    浏览(27)
  • c++中MessageBox弹窗的用法大全

    想必大家都知道,MessageBox函数是c语言中很常用且好玩的函数之一,那你知道它怎么用吗? 这是MessageBox函数的标准格式之一,本人喜欢用这种格式,注意函数的 大小写 ! MessageBox不在 #includebits/stdc++.h 头文件里面,在 #includewindows.h 里面! 这是运行出来的结果: 其中,函数前

    2024年02月08日
    浏览(28)
  • HubSpot整合小红书,MessageBox助力多系统融合

    在当今数字化潮流中,HubSpot与小红书的强大联盟成为了数字化市场的亮点。今天运营坛将深入解析它们的合作策略,聚焦于MessageBox在整合中的关键角色,以及它在推动HubSpot和小红书整合方面的关键作用。 HubSpot和小红书的合作不仅是一场普通的合作,更是一个数字化市场的

    2024年01月22日
    浏览(25)
  • MessageBox:HubSpot x Facebook全方位对接!

    在当今数字化营销的浪潮中,将多个业务系统高效整合成为推动企业成功的核心。HubSpot作为一体化的市场营销平台,与Facebook的整合通过强大的工具——MessageBox,为企业提供了更灵活、高效的整合方案。今天运营坛将深入探讨在HubSpot平台上整合Facebook的详细步骤和优势,突出

    2024年01月21日
    浏览(34)
  • Element-ui MessageBox.$alert()方法创建弹框页面跳转无法关闭

    点击取消按钮后返回上一页,但$alert()$alert()方法创建的弹框依旧会存在,或者点击浏览器回退按钮,效果一直alert弹框依旧存在,切element官网并没有提供主动关闭弹框的api方法,尝试通过$alert()中的 distinguishCancelAndClose 属性在beforeDestroy生命周期函数中触发esc按钮关闭弹框,但上面的弹

    2024年02月11日
    浏览(31)
  • Delphi中将ShowMessage,MessageDlg, MessageBox,InputBox,InputQuery及任意模态窗口相对主窗口(父窗口、母窗口)居中

    Delphi中调用系统的一些Modal模态对话框(如ShowMessage,MessageDlg, Application.MessageBox,InputBox,InputQuery等),一般是屏幕居中,也有其他窗体的TForm.Position未定义主窗口居中poMainFormCenter,若主窗口不在屏幕中间或多个显示屏时,这些对话框位置就不在主窗口中间,既不美观也不便于操作

    2024年01月20日
    浏览(27)
  • 使用SOCKET搭建linux和window实现实时摄像头传输(linux传输win端使用C++mfc显示)--Win端开发

    配置: Window10 VS2013 opencv249 如果VS和opencv配置不一样,让版本对应 Opencv与VS版本 1.1 MFC项目搭建 通过这些步骤就创建了一个MFC基础项目。 1.2项目属性配置 本项目因为要使用opencv,所以就要配置以下opencv的环境 首先在opencv官网下载opencv,此次使用opencv2.4.9,下载完并且完成安装 接下

    2024年02月10日
    浏览(36)
  • 找不到mfc100.dll的解决方法,怎么修复mfc100.dll文件

    当我们在使用电脑时,时常可能会遇到各类系统提示的错误信息。\\\"找不到mfc100.dll\\\" 就是这些错误之一,该错误提示会妨碍我们执行一些应用程序或特定代码。为了帮助读者克服这个技术障碍,本篇文章将详尽阐明导致该问题的根本原因,并提供一系列的解决方案。接下来,让

    2024年01月21日
    浏览(38)
  • windows MFC消息demo

    2024年02月11日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包