问题描述
限时送ChatGPT账号..我正在创建一个使用网格管理器的 Frame
.我有一个 Label
小部件.我希望标签小部件填充到它所在的框架中.但是框架会根据标签小部件调整自身大小.我曾尝试使用方法 grid_propagate(False)
.但它似乎不起作用.我不知道是我使用它的方式还是其他原因.
I am creating a Frame
that uses the grid manager. And I have a Label
widgets in it. I want the label widget to fill to the frame that it is in. But instead the frame resizes itself to the label widget. I have tried using the method grid_propagate(False)
. But it does not seem to be working. I don't know if it is just the way that I am using it or something else.
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_propagate
但随后使用 pack()
将小部件放入其中.尝试做
You are calling grid_propagate
but then using pack()
to put widgets in it. Try doing
self.frame.pack_propagate(False)
这篇关于在 tkinter 中使用 grid_propagate(False)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
更多推荐
[db:关键词]
发布评论