0

主要目的是希望在应用程序工具栏的绘图区域内绘制选项卡,以便笔记本或选项卡使用上述空间而不是在工具栏下方。

我们使用的框架是 WxWidgets、C++/C。我环顾四周,但未能找到解决方案,或者是否有人对工具栏本身内部的绘图选项卡进行了类似的处理。

我阅读了一些 Microsoft MSDN 文章,他们建议不要将控件绘制在控件之上。

我今天做了一些测试,并认为我想出了一个解决方案。我的解决方案是像正常一样绘制窗口,但在子窗口的右侧放置 NoteBook,该子窗口会动态调整大小和重新定位,以便它的选项卡覆盖在工具栏的顶部,以最有效地利用该区域。我将不得不处理焦点和失去焦点窗口消息,但这是我能想到的完成任务的最优雅的方式。

您可以推荐的任何想法或我在遵循这种方法时可能遇到的问题。

小样

4

1 回答 1

1

我会担心使用这样的重叠小部件。虽然它在视觉上可能看起来不太一样,但我建议查看wxToolBook它将选项卡放在工具栏中并可以解决您的问题,您可以使用该GetToolBar方法插入您自己的工具栏项目。

如果这在视觉上与您想要实现的目标不够接近,我建议从wxBookCtrlBase派生一个新控件,然后创建一个带有自定义绘制选项卡的选项卡控件,您可以使用wxToolBar::AddControl添加到工具栏。

于 2012-04-11T08:29:59.933 回答