0

我有这样的设置:

Frame->Panel->BoxSizer
The BoxSizer has 2 BoxSizers that are hidden at launch:
EditBoxSizer->FlexSizer with some inputs.
GridBoxSizer->Grid

GridBoxSizer 有一个网格。

EditBoxSizer 只是一些静态文本和输入框。

GridBoxSizer 和 EditBoxSizer 永远不会同时显示。所以每个人总是得到 100% 的 sizer 空间。

显示 EditBoxSizer 时,隐藏 GridBoxSizer。它工作完美。

隐藏 EditBoxSizer 时,会显示 GridSizer。但是,我可以在网格上看到来自 EditBoxSizer 的 StaticText 和输入框工件。

如果我最小化并恢复窗口,它看起来很完美。

我觉得我已经尝试了一切:

隐藏所有各种尺寸器和面板,然后运行 ​​layout() 然后显示它们。显示面板和 sizer 然后运行 ​​layout() 不隐藏面板。

重绘完全被重绘的 BoxSizer 的正确方法是什么?

我用的是 wxgo,但你可以用 WxWidgets 或 WxPython 回答,我可以翻译。

4

0 回答 0