Я делаю простую программу на Python 3, используя Tkinter. Мы начинаем с черного холста в полноэкранном окне tkinter, и я хочу показать синий круг в середине холста, когда я нажимаю клавишу пробела на клавиатуре.
Я попробовал этот код:
from tkinter import *
class TheBlueCircle:
def __init__(self, master):
self.master = master
self.ws = master.winfo_screenwidth()
self.hs = master.winfo_screenheight()
self.master.geometry(str(self.ws)+'x'+str(self.ws)+'+0+0')
self.canvas = Canvas(master, bg = 'black')
self.canvas.pack(fill = BOTH, expand = True)
self.canvas.bind('<KeyPress-space>', self.drawCircle)
def drawCircle(self):
r = min(self.ws, self.hs)/3
coord = (self.ws/2-r, self.hs/2-r, self.ws/2+r, self.hs/2+r)
self.canvas.create_oval(coord, fill = 'blue')
root = Tk()
TheBlueCircle(root)
root.mainloop()
Но это не работает. Независимо от того, сколько раз я нажимаю пробел. Нельзя применять функцию drawCircle.
Что не так?