我打开了一组无模式对话框,但我不能为我的生活点击其中一个让它出现在前台。它得到了焦点,但对话框永远保留在创建它们的屏幕上。创建的最后一个始终位于前景中,遮挡(或部分遮挡)其他内容。
我试过了:
响应WM_LBUTTONUP消息,但是虽然它们被调用但它们什么都不做。我在对话框属性中尝试了不同的配置,比如使用' SetForground'或者' Topmost'参数,他们什么都不做。
我是否尝试过一项不可能完成的任务?
答案 0 :(得分:1)
造成这种情况的原因是窗口所有权。拥有的窗口始终显示在其所有者上方。这在documentation。
中有所描述显然,您在无模式对话框之间拥有所有权关系。您可以通过使每个无模式对话框由同一窗口拥有来解决此问题。
您如何控制所有权取决于您创建这些对话框的方式。如果您使用CreateDialog
,则第三个参数用于指定对话框的所有者。