0

这是我的 DocSearchUI,较大框架的一部分main

class DocSearchUI(Frame):
    def __init__(self, parent):
         Frame.__init__(self, parent)
         self.initUI()

    def initUI(self):
         self.columnconfigure(3, weight=1)
         self.rowconfigure(2, weight=1)
         self.search_button = Button(self, text="Search")
         self.search_button.grid(row=0, column=0, padx=5)
         self.search_bar = Text(self, width=1, height=1)
         self.search_bar.grid(row=0, column=1, columnspan=2, sticky=W+E)
         self.pack(fill=BOTH, expand='yes')

我的主要有这个:

self.search_frame = Frame(self.master, self.editor_frame)
self.search_frame.grid(row=1, column=0, sticky=W+E)
self.search_UI = DocSearchUI(self.search_frame)

结果是这样的: 在此处输入图像描述

为什么我的搜索文本框缩小了?谢谢。

4

1 回答 1

2

看起来这是因为您为框架的第 3 列赋予了 1 的权重,但是文本小部件(文本?条目似乎是一个更自然的选择......)位于第 1 列和第 2 列。因此它位于列中重量为0,这意味着它不会增长。

尝试给第 1 列或第 2 列赋予权重。但是,如果您正在做单行小部件并且您希望文本小部件填充该行的其余部分,您可能需要使用 pack - 因为您不必计算布局,所以更容易获得正确的布局列或应用权重。

于 2012-05-09T23:24:12.600 回答