ich habe mir ein kleines Programm zusammengebastelt um ein bisschen zu "üben".
Hier erstmal der Code:
Code: Alles auswählen
from Tkinter import *
a = 0
text1 = ['ds-12300001', 'ds-12300002', 'ds-12300003', 'ds-12300004', 'ds-12300005']
text2 = [10.2, 12.5, 20.0, 25.0, 18.9]
text3 = ['Balkon', 'Kuehlschrank', 'Wohnzimmer', 'Kueche', 'Schlafzimmer']
text4 = ['OK', 'F', 'F', 'OK', 'F']
def weiter(a):
a -= 1
lab1.config(text=text1[a])
lab2.config(text=text2[a])
lab3.config(text=text3[a])
lab4.config(text=text4[a])
def zurueck(a):
a += 1
lab1.config(text=text1[a])
lab2.config(text=text2[a])
lab3.config(text=text3[a])
lab4.config(text=text4[a])
root=Tk()
lab1=Label(root,text=text1[0])
lab1.pack()
lab2=Label(root,text=text2[0])
lab2.pack()
lab3=Label(root,text=text3[0])
lab3.pack()
lab4=Label(root,text=text4[0])
lab4.pack()
but2=Button(root,text="Zurueck",command=weiter(a), width=8, height=1)
but2.pack(side="left", padx=15, pady=1)
but1=Button(root,text="Weiter",command=zurueck(a), width=8, height=1)
but1.pack(side="left", padx=15, pady=1)
root.title('Wetterstationsclient')
root.geometry('300x300')
root.mainloop()
Die Funktion weiter(a) soll eigentlich den Text in den Labelfeldern ändern, genauer gesagt, den nächsten Posten aus den Arrays auswählen. Die Funktion zurueck(a) soll fast das gleiche, lediglich soll nicht der nächste sondern der vorherige Posten gewählt werden.
Ich hoffe mir kann man helfen, wo der Gedankenfehler ist. Weil wenn ich den Code so starte, wird in den Labels jeweils alles aus Position 2 (z.B. Text1[1], also Ausgabe = ds-12300002) eigentlich sollte es ja Position 1 sein, da die Funktionen doch erst aufgerufen werden, sobald man auf den Button drückt oder nicht?
Michael