ttk.Frameオブジェクトのサブクラスを作成しようとしていますが、親のinitメソッドにキーワード引数を渡すことができません。ここに私のクラスのストリップダウンバージョンは次のとおりです。Python:ttk.Frameから継承する際にキーワード引数を使用できない
from tkinter import ttk
class MyFrame(ttk.Frame):
def __init__(self, parent, **kwargs):
super(MyFrame, self).__init__(parent, kwargs)
ここで(ルートがtkinter.Tk()
に割り当てられている)私のクラスのインスタンスを作成しようとする例です:ときに私
my_frame = MyFrame(root, borderwidth=5)
そして、ここではエラーになります私のクラスのインスタンスを作成しよう:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\csmith\Documents\tmp\frame_test.py", line 5, in __init__
ttk.Frame.__init__(self, parent, kwargs)
TypeError: __init__() takes from 1 to 2 positional arguments but 3 were given
私はキーワード引数を使用している間、フレームオブジェクトを作成することが可能です知っているが、私は、なぜ私を見つけ出すように見えることはできませんFrameのinitメソッドにキーワード引数を渡すクラスを作成できません。アドバイスありがとうございます!
に、あなたのすべてのコードを示してもらえますか? – Jake
@Jakeデバッグには十分なコードです。与えられたコードを実行するときに、エラーを再現することができます。 –