2013-04-22 63 views
1

我得到了第二帧的这种奇怪的行为。如何将“克隆回购”和“拉动”按钮调整到满栏大小?输出的图片:Tkinter奇怪的帧尺寸

example

源:

from Tkinter import * 

root = Frame() 
root.grid(sticky=N+S+E+W) 

local=LabelFrame(root, text="local") 
local.grid(row=0, sticky=E+W) 
external=LabelFrame(root, text="external") 
external.grid(row=1, sticky=E+W) 

StatusButton=Button(local, text="status") 
StatusButton.grid(row=0, columnspan=2, sticky=W+E) 

AddFileEntry=Entry(local) 
AddFileEntry.grid(row=1, column=0) 

AddFileButton=Button(local, text="add changed/new file(s)") 
AddFileButton.grid(row=1, column=1, sticky=W+E) 

CommitEntry=Entry(local) 
CommitEntry.grid(row=2, column=0) 

CommitButton=Button(local, text="Comment on changes") 
CommitButton.grid(row=2, column=1, sticky=W+E) 

CloneRepoEntry=Entry(external) 
CloneRepoEntry.grid(row=0, column=0) 

CommitRepoButton=Button(external, text="Clone repo") 
CommitRepoButton.grid(row=0, column=1, sticky=W+E) 

PushButton=Button(external, text="Push") 
PushButton.grid(row=1, column=0, sticky=W+E) 

PullButton=Button(external, text="Pull") 
PullButton.grid(row=1, column=1, sticky=W+E) 

root.mainloop() 

回答

2

在底框的微件的自然尺寸比帧小。 Tkinter需要知道如何/在哪里分配额外的空间。你可以通过给出一个柱状和/或行“重量”来告诉它这个信息。

在你的情况下,给出external的第1列,权重1将使它扩大以填充帧中的空白空间。

external.grid_columnconfigure(1, weight=1)