2016-09-15 72 views
0

我试图在wxPanel上放置一些覆盖文本。 我有几个具有完全不同内容的面板,但我想将这个覆盖文本放在面板右上角的所有这些面板上。 我只能使用wxWidgets 2.8.12 .. 您是否看到了实现此行为的方法?wxWidgets覆盖文本(C++)

编辑: Layout with 5 containers

我有一个由例如一个布局:什么我试图做 这里更详细一点版本5个容器和每个容器可以包含一个模块。一个模块可以是包含纯文本或输入控件的wxPanels,也可以是例如OpenGL画布或图像或其他内容。

因为我有很多内容,它不适合在一个页面上我想要使Container内的模块可交换。如果用户只能通过使用键盘来执行此操作,那也不错。例如。如果他按下键“3”,则必须切换第三个容器的内容。

处理这些快捷方式不是问题。不过,我需要告诉用户容器的标识符/热键。 我可以通过在每个容器上放置一个额外的标题来做到这一点,但我想尽可能在​​gui上尽可能少地占用空间。 我也可以直接绘制模块内容,但是我必须为每个模块执行此操作,并且每个模块都以不同的方式(图像,多列,opengl,...)设计,甚至可能由不同的人员设计。

所以我正在寻找一个简单的解决方案,以指示这些容器的数量不占用太多的空间。

感谢您的帮助

+0

@ Gustav-Cams,平台/工具包?你使用C++还是wxPython?你看过图书馆的样品吗? – Igor

+0

我在Visual Studio 2012中使用C++版本。我还查看了示例,但我不知道要查找什么。全文搜索“覆盖”没有结果。 –

+0

究竟是什么问题?即你尝试了什么,什么不起作用?当然,对于任何一种“覆盖”都没有特别的需要,你可以在任何面板上放一些文字... –

回答

0

可以使用wxWindowDC随时随地绘制窗口上,即使是在子窗口。但是,只要窗口或控件重新绘制,您绘制的任何东西都会被绘制。您可以在UpdateUI事件处理程序中绘制覆盖图以最小化此问题。我用wxWidgets 2.8.12在Windows上成功地使用了这种方法。不知道它是否适用于OpenGL。