c++ - 为什么HWND_NOTTOPMOST在xp中不能带窗口前景?

标签 c++ winapi

我正在使用

SetWindowPos(m_hParsent, HWND_NOTOPMOST, 0, 0, 0, 0, 
             SWP_NOSIZE | SWP_NOMOVE | SWP_NOACTIVATE)

把窗口带到前台,但是在XP系统下不行,在我的win7下就可以了。

最佳答案

HWND_NOTOPMOST 本身不会将窗口移动到前台,它只是从具有它的窗口中删除 topmost 状态,以及此操作的副作用是窗口将留在其他非最顶层窗口之上。但是文档还说“如果窗口已经是非最顶层窗口,则此标志无效。”

使用 HWND_TOP 专门将窗口移动到 z 顺序的顶部,或调用 SetForegroundWindow

关于c++ - 为什么HWND_NOTTOPMOST在xp中不能带窗口前景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26336877/

相关文章:

c++ - static ofstream 将创建一个文件但从不写入它?

c++ - 使用 C++ 在多个互斥体上调用 WaitForMultipleObjects 并设置超时

winapi - 使用 PrintWindow 制作屏幕截图时出现黑色图片

c++ - 如何使用 OpenCV 2.4.3 imRotate?

c++ - 将临时值存储为某种数据类型时,算术运算的标准规则是什么?

c++ - 缓存命中/未命中数与页面错误数 - C++ 代码 - UBUNTU

winapi - golang中的windows加密rdp密码

c++ - 处理 WM_KEYDOWN

C++:设计解释器的概念问题

c++ - 从 istringstream 读取时的意外行为