#python #python-3.x #tkinter #fonts
#python #python-3.x #tkinter #шрифты
Вопрос:
Это код, который я написал до сих пор…
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:exex_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:exex_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
Это действительно простое изменение шрифта текста на кнопке. Любая помощь с благодарностью!
Комментарии:
1.
ex_stop_button['font'] = myFont
?2. Черт возьми! Это сработало! Спасибо!
Ответ №1:
tk.Button
это тип, например, int
or float
и т.д. Вы получили бы точно такую же ошибку, если бы сделали int['font'] = myFont
.
Вместо этого то, что вы хотите сделать, это установить шрифт на экземпляре tk.Button
. В вашем случае это было бы ex_stop_button
:
ex_stop_button['font'] = myFont
-или-
ex_stop_button = tk.Button(app,
bg='Gray',
text='Stop',
width=15,
height=5,
font=myFont)