首页 > 解决方案 > 创建通用对话框时需要所有者窗口句柄的原因是什么

问题描述

我最近正在使用通用对话框,我发现hWndOwner传递给函数的结构中需要a ChooseColor

当我使用 different 时似乎没有区别hWndOwner。不同的hWndOwner选择会影响什么?选择所有者窗口时有什么需要注意的吗?

标签: c++windowsuser-interfacewinapicommon-dialog

解决方案


感谢所有评论的人!以下是我从文档中获得的主要想法。

  • 从文档中可以看出,有几件事与所有权有关:

    • 在 z 顺序中,拥有的窗口始终位于其所有者之上。
    • 当所有者被销毁时,系统会自动销毁拥有的窗口。
    • 拥有的窗口在其所有者最小化时被隐藏。
  • 将所有者设置为子窗口(不是重叠窗口或弹出窗口的窗口)相当于将其设置为顶级父窗口。

  • 窗口创建后无法转移所有权。

这就是我通过阅读文档了解到的。如果有人可以提供一些未包含在文档中的额外信息,那就更好了。


推荐阅读