Tkinter - 相同重量的列不等于宽度

Cod*_*ith 1 layout tkinter python-2.7

我有一个有三列的Tkinter Toplevel窗口.所有三列都配置为具有相同的权重.内部列02子框架,其中是Listbox小部件.内部列1是一组按钮.出于某种原因,尽管我的3列具有相同的权重,但这些列表框"迫使"它们的列占用更多空间.

我写过,

window.columnconfigure(0,weight=1)
window.columnconfigure(1,weight=1)
window.columnconfigure(2,weight=1)

但我得到:

不等的尺寸

我还给出1了3和5的列权重,但它仍然很小.但是,完成此操作后,似乎02具有一些最小尺寸,然后在从实际宽度中减去该值后,使用剩余宽度并除以重量.

这是一个错误吗?我需要对我的名单做些什么吗?我可能会忘记什么吗?

Bry*_*ley 5

这不是一个bug.weight确定如何分配额外空间.它不保证行或列的大小.

如果希望列具有统一宽度,请使用该uniform选项并使它们都成为同一个统一组的一部分.

window.columnconfigure(0,weight=1, uniform='third')
window.columnconfigure(1,weight=1, uniform='third')
window.columnconfigure(2,weight=1, uniform='third')
Run Code Online (Sandbox Code Playgroud)

注意:没有什么特别之处'third'- 它可以是任何字符串,只要它对于所有三列都是相同的字符串.