Python TypeError: migi() takes 0 positional arguments but 1 was given の解決方法が分からない

実現したいこと

キーボードのDキーを押すと灰色の円のx座標が増え、右に動くという物を作りたいです。(初心者)

発生している問題・分からないこと

灰色の円は表示されるが右には進まないという状況。

エラーメッセージ

error

1Exception in Tkinter callback 2Traceback (most recent call last): 3 File "C:\Users\okay_\AppData\Local\Programs\Python\Python312\Lib\tkinter\__init__.py", line 1948, in __call__ 4 return self.func(*args) 5 ^^^^^^^^^^^^^^^^ 6TypeError: migi() takes 0 positional arguments but 1 was given

該当のソースコード

import tkinter x = 800 y = 400 xp = 0 yp = 0 def migi(): global x, xp x = xp + x cvs.delete("all") cvs.create_oval(x+60, y+60, x, y, fill="gray") root.after(50, migi) root = tkinter.Tk() root.title("上下左右") cvs = tkinter.Canvas(width=1600, height=800, bg="white") cvs.pack() root.bind("<KeyPress-d>", migi) root.mainloop()

試したこと・調べたこと

上記の詳細・結果

migi() を migi(self) にしたらこのようなエラーが出てきました。

補足

特になし

コメントを投稿

0 コメント