gpt4 book ai didi

c++ - 嵌套子窗口的缺点?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:01:22 24 4
gpt4 key购买 nike

只是为了好玩,我正在开发 Mozilla XUL 的 native Win32 端口。 XUL 允许创建各种布局框(hbox、vbox、grid、deck..)的复杂嵌套结构。对于我的 Windows 实现,将它们实现为 STATIC 子窗口会很方便。因为这样我就可以使用独立于父框位置的 x 和 y 偏移来定位它们的子窗口。

但是,这种方法可能会导致某些窗口具有大量嵌套的子窗口。我想知道这种情况是否会有任何不利之处。这里有人知道吗?

最佳答案

我一直沿着这条路走下去,我不建议您实际制作很深的 Windows 层次结构。许多 Windows 辅助函数(例如,IsDialogMessage)与“传统”布局一起工作得更好。还有,Windows中的窗口是比较重的物体,多半是历史原因。因此,如果您有大量对象,您可能会遇到限制、性能问题等。

我所做的是将深层嵌套的布局表示为与实际窗口的扁平层次结构平行的常规 C++ 对象树。对象层次结构的某些节点具有它们所代表的“真实”窗口的 HWND。您告诉层次结构进行布局,节点将结果应用到相应的窗口。

例如,层次结构的根可能表示一个对话窗口,而叶节点表示子窗口。但是层次结构之间有几层了解布局的非窗口对象。

关于c++ - 嵌套子窗口的缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1482584/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com