问题描述
这是我到目前为止编写的代码...
import tkinter as tk
import sys
import tkinter.font as font
from tkinter.ttk import *
app = tk.Tk()
app.geometry("400x400")
app.configure(bg='gray')
photo = tk.PhotoImage(file=r"C:\ex\ex_button_active.png")
myFont = font.Font(family='Helvetica',size=20,weight='bold')
tk.Label(app,text='ex',bg='gray',font=(
'Verdana',15)).pack(side=tk.TOP,pady=10)
app.iconbitmap(r'C:\ex\ex_icon.ico')
ex_activation_button = tk.Button(app,bg='black',image=photo,width=100,height=100)
ex_stop_button = tk.Button(app,bg='Gray',text='Stop',width=15,height=5)
tk.Button['font'] = myFont
app.title("ex")
ex_activation_button.pack(side=tk.TOP)
ex_stop_button.pack(side=tk.LEFT)
app.mainloop()
我再次收到此错误...
tk.Button['font'] = myFont
TypeError: 'type' object does not support item assignment
这实际上是对按钮上的文本进行简单的字体更改。任何帮助,不胜感激!
解决方法
tk.Button
是类型,例如int
或float
等。如果执行int['font'] = myFont
,则会得到完全相同的错误。 / p>
相反,您要做的是将字体设置为tk.Button
的 instance 。您的情况应该是ex_stop_button
:
ex_stop_button['font'] = myFont
-或-
ex_stop_button = tk.Button(app,bg='Gray',text='Stop',width=15,height=5,font=myFont)