在使用 ttkbootstrap 进行字体设置时,Label 像正常工作,但 Button 报错 "unknown option -font"。这个问题可能是由于 Button 的字体设置不正确导致的。
在 ttkbootstrap 中,可以使用 config_style() 函数来全局配置部件的样式。你可以尝试使用 config_style() 来设置 Button 的字体,如下所示:from ttkbootstrap import *grid_option = {"padx": 30, "pady": 10}# 全局设置样式config_style(button_font=("Helvetica", 12)) # 设置按钮字体为 Helvetica 12号root = Window("This Forum 1.0 Beta", "morph")root.geometry("1800x1000+50+50")frame_login = Frame(root)label_username = Label(frame_login, bootstyle="dark", text="用户名")label_username.grid(row=0, column=0, **grid_option, columnspan=2)entry_username = Entry(frame_login, bootstyle="info", width=30)entry_username.grid(row=1, column=0, **grid_option, columnspan=2)label_password = Label(frame_login, bootstyle="dark", text="密码")label_password.grid(row=2, column=0, **grid_option, columnspan=2)entry_password = Entry(frame_login, bootstyle="primary", width=30, show="*")entry_password.grid(row=3, column=0, **grid_option, columnspan=2)button_login = Button(frame_login, bootstyle="success", text="登录", width=8)button_login["command"] = command_loginbutton_login.grid(row=4, column=0, **grid_option)button_register = Button(frame_login, bootstyle="info", text="注册", width=8)button_register["command"] = command_registerbutton_register.grid(row=4, column=1, **grid_option)frame_login.place(relx=0.5, rely=0.5, anchor='center')root.mainloop()
在上述代码中,通过调用 config_style(button_font=("Helvetica", 12)),设置了全局样式,将按钮的字体设为 Helvetica 12号。
请注意,在设置全局样式之前,确保已经正确安装了 ttkbootstrap 库,并且版本符合要求。
希望这对你有帮助!如果还有其他问题,请随时提问。 |