ich hab jetzt ein bisschen mit Tkinter rumgespielt, aber nirgends einen Hinweis gefunden, wie fogendes zu bewerkstelligen ist:
Für mein Programm möchte ich ein Fenster erstellen, dass zuerst einen Text anzeigt, dann auf Knopfdruck (Weiter-Taste) die vorherigen Widegets löscht und durch eine Eingabemaske ersetzt. In diese Eingabemaske schreibt man was rein, dass dann auf aktivierung des Weiter-Knopfes etwas tut und das Resultat im gleichen Fenster anzeigt, vorher aber die Eingabemaske zu löschen. Praktisch wäre auch, wenn man zwischen diesen drei Zuständen mit Weiter und Zurück-Knöpfen hin und herschalten könnte.
Mein Code sieht so aus:
Code: Alles auswählen
import sys
from Tkinter import *
from heatcalc import heat1
def ende():
sys.exit(0)
def weiterzu2():
e = Entry(nf)
e.pack()
bquad = Button(nf, text = "Quadrieren", command = quad)
bquad.pack()
def weiterzu3():
lb = Label(hauptfenster, text = "Ergebnis:")
lb.pack()
def quad():
eingabe = e.get()
zahl = float(eingabe)
lb["text"] = "Ergebnis:" + str(zahl * zahl)
nf = Tk()
fr = Frame(nf, width=200, height=100, relief="sunken", bd=1)
fr.pack(side="top")
nachricht = Label(fr, text = "Whatever")
endebutton = Button(fr, text = "Ende", command = ende)
weiterbutton = Button(fr, text = "Weiter", command = weiterzu2)
nachricht.pack()
endebutton.pack()
weiterbutton.pack()
nf.mainloop()
Ausserdem ist mir beim nachschauen aufgefallen, dass im Buch Python in a Nutshell anstatt fenster = Tk(), fenster = Tkinter.Tk() aufgerufen wird. Was ist das der Unterschied???
Vielen Dank für die Hilfe