简单的例子:
from tkinter import *
class GUI_CMP():
def __init__(self):
self.tk = Tk()
self.text = Text(self.tk,width=60,height=40)
self.text.pack()
self.tk.mainloop()
if __name__ == '__main__':
gui_cmp = GUI_CMP()
这是它的样子:
如您所见,虽然我设置了width=60,height=40
,但文本小部件的宽度小于它的高度。每次我使用 tkinter 时,这一直困扰着我。所以我的问题是:
40
和60
到底是什么意思?文本宽度小于高度的原因是什么?
控制大小的最佳方法是什么?
最佳答案
当您指定宽度和高度时,它们不是以像素为单位; 它们根据当前字体大小以字符和行来衡量
这就是为什么当您执行 Text(self.tk,width=60,height=40)
时,60 表示文本小部件的宽度为 60 个字符,而 40 表示其高度为 40 行
这也适用于按钮
这就是混淆的来源,因为它不是以像素为单位的,如果您更改字体,它会改变文本小部件的大小!
这可能是进行尺寸控制的最佳方式,一开始它只是令人困惑,但现在您知道它会更有意义!
看看这个网站Text Widget Info并查看参数以获取更多信息
关于python - 如何在 tkinter 中设置小部件的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17398926/