问题标签 [sizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
118 浏览

python - 基本 wx 尺寸问题

我有以下与尺寸相关的代码:

我期望的是我将有一个 800x600 的窗口,wx.ListBox垂直拉伸以适应桌子的整个高度。但是,虽然我确实有一个 800x600 的窗口,但wx.ListBox它并没有扩展到整个高度。相反,似乎面板确实伸展了,但列表框没有:

布局不正确

我做错了什么?

0 投票
1 回答
2702 浏览

python - wxpython Gridsizer 不适合面板

我正在开发一个 wxpython GUI。我有三个面板(左侧两个水平拆分,右侧一个与另外两个垂直拆分——想想左半边的两个正方形和右半边的高矩形)。我正在尝试在面板 3 中安装 Gridsizer(图像中的 P3)。我似乎无法让网格面板“填充”整个面板 3。相反,它们会捕捉到顶部和底部。理想情况下,我希望 10 个小面板(2 行,5 列)调整大小并很好地填充面板 3(大小相同且大到足以看到每个面板)。我究竟做错了什么?谢谢!

**** 编辑 **** 我已将代码更改为如下所示:

我的新面板 3 如下图所示。这是一些改进。但是,我希望各个面板(总共 10 个)扩展相同的数量,以便整个笔记本页面被相同大小的较小面板覆盖(想象一下日历的样子,每天都是一个面板)。

在此处输入图像描述

**** 结束编辑 ****

以下是我的原始代码:

注意: self.OtherTeams是 wx.Notebook 下的页面self.Panel3self.Panel_Others是包含我正在显示的 wx.Panels 的字典(这会动态变化,所以这就是为什么我有它们的字典而不是指定它们的原因)。

在此处输入图像描述

0 投票
2 回答
1096 浏览

wxpython - 如果在 init 中隐藏,为什么嵌套的 sizer 不会在 wxPython 中扩展?

我正在尝试构建一个 3 面板 GUI,一切都很顺利,直到我尝试将面板/窗口嵌套在其他面板中并在 GUI 启动时隐藏它们。

看到这张图片...黄色/绿色/蓝色框在初始化期间自动扩展以填充它们的面板,但是在 wx.Panel 初始化期间构建了小紫色框但随后隐藏,直到 2 秒计时器到期然后在那个时候该对象的 Show() 方法被调用。那时它不会填满包含面板。似乎在初始化期间隐藏面板会导致面板大小调整器选择默认大小 20x20。

尺寸测试

这是代码:

我希望在 GUI 启动时隐藏此面板的原因是因为我将在该 ActionPanel 空间(绿色框)中有许多不同的面板,并且当用户单击黄色框中的树节点时,显示在将隐藏绿色框并显示不同的面板。如果我在启动时不隐藏所有面板,它们会“堆叠”在彼此之上,我将不得不设置一个计时器来通过并在 GUI 启动后的某个时间点将它们全部隐藏???这似乎很胡扯。我还能怎么做?

0 投票
1 回答
352 浏览

python - 是什么让 wxpython TextCtrl 水平填充

我有TextCtrl一个水平的BoxSizer。添加权重为 1(在权重为 0 的按钮旁边)。当我运行程序TextCtrl时,无论窗口大小如何,它都会保持固定宽度,旁边有空白区域。为什么?

这是代码:

0 投票
2 回答
485 浏览

python - 无法在不阻止 wxpython 中的工具栏的情况下添加文本控件

我在这里重现了错误;

现在无论我在哪里添加此行以添加文本控件;

它出现在工具栏上。我阅读了文档并遵循了一些教程,但我仍然无法完全掌握这个概念。我怎样才能实现我想要的?我希望文本控件出现在工具栏下方并适合剩余空间。

0 投票
2 回答
2005 浏览

wxpython - 在嵌套尺寸器中找到“父”尺寸器的最佳方法是什么?

在 wxpython 中,我在单个单元格中有一个 GridBagSizer、gs、一些嵌套的 sizers1s2一个 button 。b

在一个EVT_BUTTON事件中,我得到了按钮对象。要将网格中的按钮对象移动到不同的网格单元格,我需要移动顶级大小调整器 s1,它是 GridBagSizer gs 的直接“子项”(如果这是正确的术语)。找到顶级尺寸器的最佳方法是什么?

object.GetContainingSizer()返回按钮对象的大小,s2,但我看不到如何到达 s1。我是否需要将 s1 的引用存储在我的 s2(或 b)对象中?这似乎相当不雅?

答案(到目前为止):我发现了一段代码,我不知道该归功于谁 - 似乎与 dabo 有关。它在 dGridSizer.py 中,但它做了我正在寻找的类似事情:

到目前为止,这似乎适用于我在网格中的所有情况。不确定我现在是否理解它,稍后我将不得不深入研究代码 - 现在只需要完成这项工作。

0 投票
1 回答
726 浏览

python - boxsizer 内的 wxpython 笔记本

这段代码有什么问题?我正在尝试将笔记本放在由 boxsizer 控制的面板上。我是 wxpython 的新手,无法弄清楚我做错了什么。当我运行它时,它只会在角落里弄得一团糟:(

0 投票
3 回答
3290 浏览

python - 带有sizer的wxpython布局

我很难让我的 sizer 在 wxpython 中正常工作。我正在尝试在顶部做一个简单的水平条(其中包含文本)和下面的两个垂直框(带有gridsizers *左边的应该只有2列!*在每个里面)。我希望图像中的所有内容也能够拉伸并适合我的面板(能够在侧面和顶部/底部添加填充)。 在此处输入图像描述

我有两个主要问题: 1. 我不能让水平栏中的文本位于中间(它向左) 2. 我想将两个垂直框隔开以适当地跨越并适合页面(也将像网格也更好地跨越)。

这是我的代码(省略了一些部分):

0 投票
2 回答
305 浏览

wxpython - Nesting sizers within a box using wxPython

I wish to make horizontal rows of labels and text fields, and place the rows inside a box with a label so they are grouped nicely. However, for some reason the box only extends around the last row in the series (see image below) I would like it to group all of the rows.

Is there an easier way to make a grouped and labelled interface like this?

Error with box label

The code to generate the above,

0 投票
1 回答
1388 浏览

python - 带有多个面板的 wxpython 大小控制

我正在尝试显示具有三个面板的全屏应用程序。屏幕应该首先分成两个垂直面板,右边的一个分成两个水平面板。就像是:

问题是我不明白,因为我对sizer有一些问题。这是我的尝试: