So mache ich Asteroiden und es ist in einem frühen Stadium. Ich habe eine Schaltfläche, aber die Befehlsfunktion ruft die Funktion nicht in derselben Klasse auf. Hier ist der Code:Aufruf eines Befehls in einer Schaltfläche funktioniert nicht
class parentWindow():
def play(self,master):
print("PARTY")
def __init__(self,master):
self.master=master
self.master.title("Asteroids")
self.background_image = PhotoImage(file = "Stars.gif")
self.canvas = Canvas(self.master, width = 1920, height = 1080, bg = "black")
self.canvas.image = self.background_image
self.canvas.pack(expand = YES, fill = "both")
self.canvas.create_image(0,0, image= self.background_image, anchor = NW)
label1 = Label(text="ASTEROIDS", fg="white", bg="black", height=3, width=10)
label1.config(font=("arcadeclassic", 50))
label1.place(x=775, y=200)
button1 = Button(text = "Play", command= play)
button1.place(x=900, y=600)
Wenn ich dies (und den Rest) ich werde mit "Play ist nicht definiert" begrüßt. Danke für die Hilfe!
Ihre Einrückungen scheinen kaputt zu sein. 'play' und' _init__' müssen innerhalb der 'class' Anweisung eingerückt werden. –