Tkinter - 文本小部件扭曲列大小

时间:2012-07-13 05:25:36

标签: python tkinter

我正在使用网格管理器并排放置两个框架,并且在第二行中的两个框架下方各有一个按钮的五个列,均匀间隔。所有都使用“粘性”NSEW,因为如果我放大窗口,我希望它们按比例缩放。

当我向右侧框架添加文本输入窗口小部件时,它会扭曲它们下方的按钮,使它们比左侧的按钮大。我无法弄清楚如何防止这种失真,换句话说,如何保持每列的大小相同。

有没有理由为什么文本输入窗口小部件不是行/列/加权?提前致谢!

3 个答案:

答案 0 :(得分:0)

您可以尝试使用columnspanrowspan。此应该允许按钮不受文本小部件的影响。

例如:

root=Tk()
button1=Button(root,text="button1")
button1.grid(row=1,column=0)
textbox=Text(root)
textbox.grid(row=1,column=1,rowspan=2)

答案 1 :(得分:0)

在每个帧中,您应该将“传播”状态设置为false,这将使帧不会根据内部的大小进行调整。因此,如果框架使用grid()设置grid_propagate(False),依此类推。

答案 2 :(得分:0)

我认为这是因为您已经为条目窗口小部件指定了特定宽度(或接受默认值)。由于小部件想要成为特定大小,因此它将使列增长以适应其子级的请求大小。

一种解决方案是将条目小部件的大小设置为1.然后,由于E和W的粘性设置,它将扩展为完全适合列。