在Python Tkinter中使用网格传播(False)
我正在创建一个使用网格管理器的框架。我有一个标签。我希望标签小部件填充到它所在的框架中。但是取而代之的是,框架根据标签小部件重新调整了自身大小。我尝试过使用grid_propagate(False)方法。但它似乎不起作用。我不知道这是否只是我使用它的方式,但有人能帮我弄清楚为什么它不起作用吗在Python Tkinter中使用网格传播(False),python,methods,tkinter,grid,Python,Methods,Tkinter,Grid,我正在创建一个使用网格管理器的框架。我有一个标签。我希望标签小部件填充到它所在的框架中。但是取而代之的是,框架根据标签小部件重新调整了自身大小。我尝试过使用grid_propagate(False)方法。但它似乎不起作用。我不知道这是否只是我使用它的方式,但有人能帮我弄清楚为什么它不起作用吗 def fields(self): frame_row = 0 frame_column = 0 row_count = 0 color = "red" for i
def fields(self):
frame_row = 0
frame_column = 0
row_count = 0
color = "red"
for i in range(50):
self.bfr2.columnconfigure(frame_column, pad=10)
self.bfr2.rowconfigure(frame_row, pad=10)
self.frame = Frame(self.bfr2, bg="grey", width=229, height=120)
self.frame.grid(row=frame_row, column=frame_column)
self.frame.grid_propagate(False) #This is where it should prevent the Frame from re sizing but it does not.
self.sum = Label(self.frame, bg="green", text="This is a summary of a note")
self.sum.pack(side=TOP, fill=BOTH)
frame_column = frame_column + 1
row_count = row_count + 1
if row_count == 2:
frame_row = frame_row + 1
frame_column = 0
row_count = 0
if color == "red":
color = "green"
else:
color = "red"
if color == "red":
color = "green"
else:
color = "red"
您正在调用
grid\u propagate
,然后使用pack()
将小部件放入其中。试着做
self.frame.pack_propagate(False)
您正在调用
grid\u propagate
,然后使用pack()
将小部件放入其中。试着做
self.frame.pack_propagate(False)