So sieht der Code von meinem Programm bis jetzt aus.
Code: Alles auswählen
#rx1 bedeutet Rand, x-wert der linken oberen ecke
rx1=0
ry1=0
rx2=500
ry2=0
rx3=500
ry3=500
rx4=0
ry4=500
#rax1 bedeutet Regal a, X-wert der linken oberen ecke
rax1=100
ray1=100
rax3=400
ray3=400
from tkinter import *
size=500
window = Tk()
a = Canvas(window, width=size, height=size)
xc=0
yc=0
m=1
step=4
x1=0
y1=0
x3=25
y3=25
Richtung = 'ym'
#x1 ist der x-wert der linken oberen Ecke der Figur
if step == 4:
print('step = 4')
Figur = a.create_rectangle(x1, y1, x3, y3, fill='black')
step = 1
if step == 1:
print('step = 1')
if input() == ('w'): #diese Zeile verhindert anscheinend,
print('w') #dass das tkinter-Fenster angezeigt wird
Richtung = 'ym' #oder lässt es verschwinden, bevor man es sehen kann
step = 2
if input() == ('a'):
Richtung = 'xm'
step = 2
if input() == ('s'):
Richtung = 'yp'
step = 2
if input() == ('d'):
Richtung = 'xp'
step = 2
if step == 2:
print('step = 2')
if Richtung == 'ym':
xw = xc
yw = yc - 25
step = 3
#Berechne den neuen y-Wert
#Wenn in der aktuellen Richtung ein Hindernis ist, ist m = steh
if step == 3:
print('step = 3')
if xw < x1 or x > x3 or y < y1 or y > y3 or xw > rax1 and x < rax3 and y > ray1 and y < ray3:
m = 2
step = 1
else:
x1
step = 4
#wo muss das hin?
if m == 2:
step = 1
if m == 1:
step = 4
Dass da einiges nicht funktionieren kann, kann ich mir jetzt vorstellen.
Wenn Tkinter mit dem Befehl input() nicht umgehen kann, dann sind in meinem aktuellen Code wahrscheinlich noch viele Befehle, bei denen das auch so ist.
Die Idee, Tkinter zu verwenden habe ich durch ein Einsteiger-Lehrbuch bekommen. Dort werden die key-Befehle verwendet. Da ich diese noch nicht verstehe, habe ich stattdessen den input()-Befehl verwendet.
Jetzt denke ich nach, wie ich weiter mache. Entweder ich lese erst mal mehr über Tkinter, welche Befehle verwendet werden dürfen. Oder ich beschäftige mich erst mal mit den totalen Grundlagen. Vielleicht ist das deutsche Python-Tutorial da geeignet. Außerdem habe ich mir die soloLearn-App installiert, die an anderer Stelle im Forum empfohlen wurde.
Die Frage bei meinem Labyrinth-Programm wäre jetzt, wo all die für mich neuen Befehle hingehören. Nun ja, ich habe noch viel zu lernen. Werde gleich mal mit dem Lesen anfangen.