【发布时间】:2010-11-08 05:06:22
【问题描述】:
我有一个 C++ 应用程序,我需要在其中创建最顶层的窗口。有时它有效,但经常失败。在应用程序的一部分中,我创建了一个后台线程来显示最顶层的信息窗口。用户关闭窗口后,线程消失。应用程序第一次创建线程并显示窗口时,窗口位于最顶层。但是,所有后续线程都无法在其窗口上设置最顶层。我尝试使用 WS_EX_TOPMOST 样式创建窗口,并在创建窗口后调用 SetWindowPos。这些方法都不起作用。我查看并找不到任何关于无法将窗口设置为最顶部的问题的任何人的参考。
在我运行的一项测试中,我调用了 SetWindowPos,在它返回后我检查了窗口的样式,即使 SetWindowPos 返回成功,它也没有设置为最顶层。我还使用 Spy++ 来检查窗口的样式,它确认没有设置样式。
【问题讨论】:
-
您的代码中似乎有一些错误。你介意把它贴在这里吗?