我遇到了这两种方法,可以在要创建的按钮的设置中创建带有默认设置的按钮。我的问题是,一个对另一个有什么好处或缺点?当然,撇开导入库的方式相比,
第一格式:
import tkinter as tk
class CalcButton(tk.Button):
def __init__(self, parent, *args, **kwargs):
kwargs.setdefault("font", ("Roboto Cn", 14))
kwargs.setdefault("width", 3)
kwargs.setdefault("bd", 1)
kwargs.setdefault("relief", "ridge")
super().__init__(parent, *args, **kwargs)
root = tk.Tk()
root.title("Calculadora Basica")
mi_frame = tk.Frame(root)
mi_frame.pack()第二条路:
from tkinter import *
class CalcButton(Button):
def __init__(self, parent, *args, **kwargs):
super().__init__(parent, *args, **kwargs)
self.config(font=("Roboto Cn", 14))
self.config(width=3)
self.config(bd=1)
self.config(relief="ridge")
root = Tk()
root.title("basic calculator")
my_frame = Frame(root)
my_frame.pack()发布于 2021-10-08 19:32:05
您提供的两个解决方案在行为上并不相同。第一个将建立默认值,但让调用者覆盖默认值,第二个将无条件地覆盖传入的内容。
因此,两者之间的优势取决于您是要接受用户指定的选项还是要覆盖它们。
https://stackoverflow.com/questions/69500650
复制相似问题