使用.config时出现巨大错误信息

0 投票
2 回答
992 浏览
提问于 2025-04-18 07:08

我正在学习tkinter,并且在做一个计算器。

我正在设置按钮,现在想要调整其中一个按钮的大小,使用的是:

Button_back = ttk.Button(Frame1, text='Back', command=printhi) #printhi is temporary.
Button_back.grid(column=0, row=0)
Button_back.config( height = 25, width = 25 )

但是当我运行的时候,出现了错误信息:

>Traceback (most recent call last):   File "C:\Users\Luuk\Python
>PGMs\tkinter\2-1 - Calculator.py", line 75, in <module>
>Button_back.config( Height = 25, width = 25 )

>File "C:\Program Files (x86)\Python34\lib\tkinter\__init__.py", line 1270, in configure

>return self._configure('configure', cnf, kw)   File "C:\Program Files (x86)\Python34\lib\tkinter\__init__.py", line 1261, in
> _configure
>self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))

> _tkinter.TclError: unknown option "-height"

我完全不知道我哪里出错了,因为每个网页上都说这样做应该能正确处理宽度和高度。

2 个回答

0

按钮是没有“高度”这个概念的,只有“宽度”...(其他东西可能也是这样,但这是我现在确定的)

经过又半小时的搜索,我发现了这个:

http://www-acc.kek.jp/WWW-ACC-exp/KEKB/control/Activity/Python/TkIntro/introduction/button.htm

1

你的回答有点对,但其实 Tkinter 按钮是有高度选项的,只不过 ttk 按钮没有。如果你真的需要设置高度,可以使用普通的 Tkinter 按钮,只是它看起来没有那么好看。此外,如果你下次再遇到类似的问题,可以通过打印 widget.config() 来查看小部件的选项字典。

import tkinter as tk
import ttk


root = tk.Tk()

tk_button = tk.Button(root, text='tkinter button')
ttk_button = ttk.Button(root, text='ttk button')

for key in tk_button.config().iterkeys():
    print('tkinter: ' + key)

for key in ttk_button.config().iterkeys():
    print('ttk: ' + key)

tk_button.pack()
ttk_button.pack()


root.mainloop()

撰写回答