我在 TKinter 中构建了一个相当复杂的 GUI,所以很自然地一直在使用 .grid 函数。
我已将我的一些小部件分组到框架中以使其更易于处理,但由于某种原因,当我在框架中使用带有小部件的 .grid 时,sticky 属性似乎不起作用 - 我的小部件没有填满整个框架。
例子:
f3 = tk.Frame(self, borderwidth=1, relief="ridge")
f3.grid(row=0, column=0, sticky="NS")
tk.Label(f3, text="Site List").grid(in_=f3, row=0, column=0)
self.sitelist = tk.Listbox(f3)
self.sitelist.grid(in_=f3, row=1, column=0, sticky="NS")
在上面的代码中,框架f3
填充了我的根小部件的 0,0 单元格中的空间,但列表框并没有填充框架中的所有空间,即使我已经要求它是粘性的“NS”。
如果将 Listbox 放在根小部件的 0,0 处,则它会拉伸并很好地填充所有空间。如果它在框架中,它只是表现不佳。
谁能解释如何解决这个问题?
我认为使用框架会简化我的布局,但事实并非如此!!!
干杯。克里斯