wxSmith管理wxPanel的好方法

时间:2011-12-06 10:41:07

标签: c++ wxwidgets

我有一个项目,我想要显示或隐藏许多wxPanel,具体取决于用户的选择。所有面板都在同一个位置,一次只显示一个。

在代码方面,根本没有问题。如果它变得棘手,是如何使用wxSmith管理它并保持清晰的视图,同时在样本位置有许多wxpanel?

一种非常不合适的方法是使用wxNotebook,然后当你开始软删除所有标签然后显示所需的面板。

我环顾四周尝试将面板放在“其他”wxSmith窗口上然后加载它,就像一个类但没有找到任何好的。

我敢肯定,因为wxSmith真的是一个很棒的工具,它必须有办法做到这一点。

感谢您的帮助!

见你

2 个答案:

答案 0 :(得分:0)

“一种非常不合适的方法是使用wxNotebook,然后当你开始软删除所有标签然后显示所需的面板。”

为什么不呢?我将这种技术用于AtomWeaver,它运行正常。好的一面是,您可以在RAD GUI构建器上正常设计每个页面。

我创建了一个名为GUI_NotebookPageData的类,它包含指向单个笔记本页面的指针。创建一个这样的数组,保存有关所有笔记本页面的信息。

然后,通过索引或名称,获取要显示/隐藏的页面的信息,并使用wxNotebook的RemovePage()/ InsertPage()方法。

此方法特别适合同时显示多个页面。

答案 1 :(得分:0)

实际上可以将外部资源与wxSmith一起使用,然后管理帧非常简单。

它在一个新的wxSmith窗口上从wxPanel(或其他窗口)创建一个派生类,易于管理,只需要将其包含在项目中。