一尘不染

为什么我的Button小部件不能垂直展开

python

我熟悉Tkinter,并且尝试编写一个非常简单的程序,该程序使用包几何管理器在窗口中显示一个按钮。

我与各种配置选项试验pack(),如expandfillside,和我碰到一个特殊的问题。我写了以下代码:

from Tkinter import *

root = Tk()
widget = Button(root, text='text')
widget.pack(expand=YES, fill=BOTH)
root.mainloop()

问题在于按钮会在水平方向(而不是垂直方向)上展开以填充窗口。如果没有指定fill=BOTH我使用,则得到的结果相同fill=X。另外,如果我指定fill=Y的话,按钮不会向任一方向扩展。垂直方向上的填充似乎出了问题,我无法弄清楚它可能是什么。

我尝试使用Google搜索此问题,但令人惊讶的是,其他任何人都没有提及此情况。我在Mac上使用OS X Yosemite,并运行python
2.7.5。我也尝试使用python 3.4.1进行编译,但没有发现任何变化。

编辑:

根据下面的答案和注释,很明显我的代码没有错,因为它似乎可以在其他计算机上运行。如果代码中没有错误,那么在我运行上述代码时,是否有人知道导致按钮无法垂直拉伸的原因?


阅读 207

收藏
2021-01-20

共1个答案

一尘不染

这是OSX上本机按钮的功能。OSX上的按钮将为固定高度,并且不会垂直扩展。除了使用其他小部件(例如标签),您无能为力。

2021-01-20