我确定我在这里遗漏了一些东西,但是当我们在两个ttk.Labelframe物品彼此相邻放置时,我无法增加间隙或空间Grid()几何管理器(参见下面的图片)。
我的代码结构(伪)的简单表示如下:
Root()
mainframe = ttk.Frame()
frame1 = ttk.Labelframe()
frame1.Grid(row=0, column=0)
frame2 = ttk.Labelframe()
frame2.Grid(row=0, column=1)
我尝试mainframe.rowconfigure(0,weight=1)
和mainframe.columnconfigure((0,1), weight=1)
无效(但这适用于这些框架内的其他小部件)。我还尝试向padding
添加更多mainframe
,但这只会在mainframe
内部添加填充。 frame1和frame2,不在它们之间。
我可能错过了某个关键字或属性,但我还没找到它。请记住,我使用主题tkinter小部件(ttk),因此并非所有关键字tk小部件都适用于ttk小部件。
先谢谢所有人,
答案 0 :(得分:1)
通常只有在发布问题后才能找到您正在寻找的答案。 。
我错过了mainframe.columnconfigure()
中的关键字。关键字pad
足够有趣(-.-)。即:mainframe.columnconfigure((0,1), weight=1, pad=5)
将配置列0到1,每个列的权重为1(如果是拉伸),另外一个5像素的填充将添加到
这些列中的最大单元格,导致帧之间的空间。
编辑:或者,网格命令本身也有一个padx和pady选项:the_label.grid(row=0, column=1, padx=10)
- Bryan Oakley
希望这可以帮助别人。