MessageBox 函数用于创建、显示并操作一个消息对话框。该对话框包含由调用程序定义的信息和标题,以及预先定义的图标和按钮。

  这个方法的第一个参数hWnd,代表消息框拥有的窗口。这个参数到底有什么作用呢?做了一个例子,刚好测试到这一点。

  假如hwnd句柄指向的窗口是置顶展示的。

1、参数不为NULL
  MessageBox(hwnd,"123","Win32_Mouse",MB_OK);
  弹出消息框继承了置顶展示的效果。原窗口中的所有按钮都不可点击,也不能拖动,只能先结束当前的消息框才能操作原来的窗口。

2、参数为NULL
  MessageBox(NULL,"ABC","Win32_Mouse",MB_OK);
  弹出的消息框没有拥有的窗口,没有置顶展示的效果了,会被原来的窗口给遮盖住一部分。原窗口可以进行所有的操作。


参数说明

hWnd:
  指定该对话框的所有者窗口。如果该参数为空(0),则该对话框不属于任何窗口(?)。
lpText:
  显示在对话框中的消息。
lpCaption:
  在对话框标题栏中显示的字符串表达式。如果该参数为空(vbNullString),则使用默认的“错误”作为对话框的标题。
wType:
  指定显示按钮的数目及形式,使用的图标样式,缺省按钮是什么以及消息框的强制回应等。可以为下列常数之一或某几个数值相加的和。

指定按钮样式
MB_ABORTRETRYIGNORE —— 显示 Abort、Retry 及 Ignore 按钮。
MB_OK —— 只显示 OK 按钮。(默认)
MB_OKCANCEL —— 显示 OK 及 Cancel 按钮。
MB_RETRYCANCEL —— 显示 Retry 及 Cancel 按钮。
MB_YESNO —— 显示 Yes 及 No 按钮。
MB_YESNOCANCEL —— 显示 Yes、No 及 Cancel 按钮。

指定图标样式
MB_ICONEXCLAMATION, MB_ICONWARNING —— 显示 Warning Message 图标。
MB_ICONINFORMATION, MB_ICONASTERISK —— 显示 Information Message 图标。
MB_ICONQUESTION —— 显示 Warning Query 图标。
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND—— 显示 Critical Message 图标。

指定默认按钮
MB_DEFBUTTON1 —— 第一个按钮是缺省值。(默认)
MB_DEFBUTTON2 —— 第二个按钮是缺省值。
MB_DEFBUTTON3 —— 第三个按钮是缺省值。
MB_DEFBUTTON4 —— 第四个按钮是缺省值。

指定对话框模式等:
MB_APPLMODAL —— 应用程序强制返回;应用程序一直被挂起,直到用户对消息框作出响应才继续工作。
MB_SYSTEMMODAL —— 系统强制返回;全部应用程序都被挂起,直到用户对消息框作出响应才继续工作。
MB_TASKMODAL
MB_DEFAULT_DESKTOP_ONLY
MB_HELP —— 将Help按钮添加到消息框。
MB_RIGHT —— 文本为右对齐。
MB_RTLREADING —— 指定文本应为在希伯来和阿拉伯语系统中的从右到左显示。
MB_SETFOREGROUND —— 指定消息框窗口作为前景窗口。
MB_TOPMOST
MB_SERVICE_NOTIFICATION
MB_SERVICE_NOTIFICATION_NT3X
MB_SERVICE_NOTIFICATION

返回值
如果没有足够内存创建消息对话框,则返回0。
如果函数成功运行,则返回下列数值之一:
IDABORT —— 用户点击了 Abort 按钮。
IDCANCEL —— 用户点击了 Cancel 按钮。
IDIGNORE —— 用户点击了 Ignore 按钮。
IDNO —— 用户点击了 No 按钮。
IDOK —— 用户点击了 OK 按钮。
IDRETRY —— 用户点击了 Retry 按钮。
IDYES —— 用户点击了 Yes 按钮。
如果对话框显示 Cancel 按钮,则按下 ESC 键与单击 Cancel 按钮的效果相同。

参考链接:
[1]http://baike.baidu.com/link?url=d9klcIelIf1rjHnevFn1HzmWir875EvN-q7flzCVAmlbiPjHVtSZgsUNU9jkXyUMXaCjVERpQJmNlyjYOGg45ECogaXJiFSSoSjsrsB-uFXQzPQ-0HtOX4KtgCydGgkL

MessageBox函数第一个参数hwnd的作用的更多相关文章

  1. JS的setTimeout函数第一个参数问题

    setTimeout的第一个参数只能放一个无参的函数,更像放了一个函数指针在那里,如果要放带参数的话,就要拿个匿名函数包裹一下

  2. setInterval()第一个参数带引号和不带引号的区别

    setInterval()第一个参数带引号和不带引号的区别:关于定时函数setInterval()的基本用法这里就不做介绍了,查阅相关教程即可,这里主要介绍一下setInterval()函数的第一个参 ...

  3. node第一个参数必须是err

    Node.js 约定回调函数第一个参数必须是错误对象err: 问题:Node.js约定回调函数第一个参数必须是错误对象err,如果没有错误该参数就是null 原因:异步执行分成两段,在两段之间抛出异常 ...

  4. (转)AS3 中,Function.apply、call中第一个参数的作用;与什么时候用

    http://blog.csdn.net/linjf520/article/details/8746064 大家在使用Function.apply或是call时,是否发现,第一个参数不知道怎么用,赋值 ...

  5. 当call/apply传的第一个参数为null/undefined的时候js函数内执行的上下文对象是什么呢?

    如题:在js中我们都知道call/apply,还有比较少用的bind;传入的第一个参数都是改变函数当前上下文对象;call/apply区别在于传的参数不同,一个是已逗号分隔字符串,一个以数组形式.而b ...

  6. 对setTimeout()第一个参数是字串的深入理解以及eval函数的理解

    <script language="javascript" type="text/javascript"> var a=1; setTimeout( ...

  7. call和apply第一个参数为null/undefined,函数this指向全局对象

    call和apply第一个参数为null/undefined,函数this指向全局对象,在浏览器中是window,在node中是global 在严格模式中(ie 6/7/8/9 除外),传入null/ ...

  8. php重建二叉树(函数缺省参数相关的都写在后面,比如array_slice函数中的$length属性,故第一个参数是操作的数组)

    php重建二叉树(函数缺省参数相关的都写在后面,比如array_slice函数中的$length属性,故第一个参数是操作的数组) 一.总结 牛客网和洛谷一样,是真的好用 二.php重建二叉树 输入某二 ...

  9. ARTS-S pytorch中backward函数的gradient参数作用

    导数偏导数的数学定义 参考资料1和2中对导数偏导数的定义都非常明确.导数和偏导数都是函数对自变量而言.从数学定义上讲,求导或者求偏导只有函数对自变量,其余任何情况都是错的.但是很多机器学习的资料和开源 ...

随机推荐

  1. [01] 初识SpringBoot:Hello World

    引用百科的一句话来说,SpringBoot是一款全新框架,设计目的是为了简化新Spring应用的初始搭建以及开发过程. 怎么讲呢,首先要明确的就是SpringBoot不是替代Spring的一种解决方案 ...

  2. odoo订餐系统之订单相关知识点理解

    1.对重载函数name_get的理解 第一,此函数位于Model基类中,返回值是一个list列表,列表中的每个值是如(key,value)形式的键值对,此处为(id,name). 第二,在自己的Mod ...

  3. PHP生成QRCode二维码

    php生成QRCode二维码示例 <?php //引入 phpqrcode 类库 //phpqrcode下载地址:https://github.com/t0k4rt/phpqrcode //或从 ...

  4. ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-WebApi与Unity注入

    系列目录 前言: 有时候我们系统需要开放数据给手机App端或其他移动设备,不得不说Asp.net WebApi是目前首选 本节记录Asp.net MVC WebApi怎么利用Unity注入.系列开头已 ...

  5. centos7.4下Jira6环境部署及破解操作记录(完整版)

    废话不多说,以下记录了Centos7针对Jira6的安装,汉化,破解的操作过程,作为运维笔记留存. 0) 基础环境 192.168.10.212 Centos7.4 mysql 5.6 jdk 1.8 ...

  6. 分布式监控系统Zabbix-图形集中展示插件Graphtree安装笔记

    Zabbix想要集中展示图像,唯一的选择是screen,后来zatree解决了screen的问题,但性能不够好.Graphtree 由OneOaaS开发并开源出来,用来解决Zabbix的图形展示问题, ...

  7. 树的最长链-POJ 1985 树的直径(最长链)+牛客小白月赛6-桃花

    求树直径的方法在此转载一下大佬们的分析: 可以随便选择一个点开始进行bfs或者dfs,从而找到离该点最远的那个点(可以证明,离树上任意一点最远的点一定是树的某条直径的两端点之一:树的直径:树上的最长简 ...

  8. Daily scrum 12.24

    平安夜闲得想来一遍scrum,添加了之前ui组的数据库问题修复任务. 其实是之前忘记在任务中添加了.现在基本修复完成. Member Today’s task 林豪森 与学霸其他小组交流,处理整合问题 ...

  9. Java实验二

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1351    姓名:黄君如  学号:20135117 成绩:             指导教师:娄 ...

  10. 最终版alpha阶段总结

    这是我们组最终的alpha阶段总结,我和陈汝婷虽然最后做的没有想象的好,时间也很紧急,但是真的学到很多,毕竟现在我们两个人做的活是其他组四个人做的活,其实能做到这样,哪怕这样,我们也觉得没有什么遗憾了 ...