MessageBox 这个API相比大家已经熟悉的不能再熟悉了
不过我想知道一下,这个API在第一个参数是NULL的时候,他的运行机制。
::MessageBox(NULL, ...)
这种时候,他是不会阻塞掉当前线程,而且,当前的AP还可以弹出很多个,且每个MsgBox之间都不互相干扰。
有人能帮忙解释一下其中的内部运行机制吗?
不过我想知道一下,这个API在第一个参数是NULL的时候,他的运行机制。
::MessageBox(NULL, ...)
这种时候,他是不会阻塞掉当前线程,而且,当前的AP还可以弹出很多个,且每个MsgBox之间都不互相干扰。
有人能帮忙解释一下其中的内部运行机制吗?
解决方案 »
- VC 对话框打印予览出异常
- 点击自定义协议连接,怎么防止重复启动程序呢?
- 如何能遍历指定的文件夹包括子文件夹里所内容?
- 各位大侠,帮我看看为什么该发送文件线程在debug下面正常,在release下面错误?
- 请教各位大侠内存问题,在线等待,高分相送
- 谁能给我一篇关于MFC 扩展Dll的编制与使用的原程序吗?
- 用Windows API 怎么把一个对话框嵌入到另一个对话框中?
- 1000分求解插值算法的问题:http://www.csdn.net/expert/topicview1.asp
- DLL里输出变量和把变量定义在共享段(pragam seg())里有什么区别?
- openni_grabber.exe 中的 0x75ea812f 处有未经处理的异常: Microsoft C++ 异常: 内存位置 0x0012f348 处的
- 一个关于win raw socket问题
- 关于ActiveX控件的菜鸟问题
[in] Handle to the owner window of the message box to be created. If this parameter is NULL, the message box has no owner window.
这个hwnd,就给出了meessagebox这个类似或者说就是模态对话框的父窗口,对于模态对话框,楼主应该知道什么意思了吧, 其他窗口将不会拥有焦点,若hwnd == NULL, has no owner window当然就有其他窗口会得到焦点, 这跟domodel(NULL),一样的道理,就是这个,但是不能说他阻塞了其他线程,没这个说法!
父窗口句柄默认为主界面
可是我测试了一下,若我第一个参数传::GetDesktopWindow()
发现他和传NULL的效果一样(当然这个效果是指我们表面上看上去的效果)
那这个时候MessageBox是模态还是非模态?模态的话,主窗口就是桌面了吗??
我自己的应用程序,还是桌面所属的AP?
很疑惑这点~
ps:呵呵, 感觉你这问题是在挖陷阱让我跳,不过重在交流,即使我说的不对,如果最后能证明是不对的,那也挺好!