Python - Tkinter - Elemente replatzieren

Gast #5306619
Lesenswert?

Hallo!

Bin Neuling beim Programmieren mit Python 3. Beherrsche C ziemlich gut, 
aber nicht mit GUI.

Ich weiß mittlerweile, wie man mit tkinter ein Fenster erstellt und 
Buttons, Eingabefelder Label und das Menü erstellt, positioniert und 
verwendet.

Nun möchte ich ein kleines Programm schreiben, bei dem es mehrere Seiten 
gibt.

Also z.B. ist die erste Seite die Willkommensseite. Dann wählt man im 
Menü aus, dass man z.B. eine neue Kartei anlegen will. Dann muss ein 
Formular angezeigt werden. Das bedeutet, die Willkommensschrift muss weg 
und stattdessen müssen Eingabefelder  und Buttons her.

Wie macht man so eine Replatzierung von Elementen im laufenden Programm?

Habe folgendes versucht:

if zustand==0:
    labelWillkommen.grid(row=0, column=0, padx=0, pady=0)
else:
    labelKartei.grid(row=0, column=0, padx=0, pady=0)

Die Variable "zustand" wird im Programm geändert (Konsolenausgabe 
bestätigt es), aber das ursprüngliche Label bleibt. Gibt es da einen 
Befehl, das die Neuplatzierung der Elemente bewirkt? Oder geht man da 
eher anders vor?

Danke für alle Tipps im Voraus!
Gast #5307947
Lesenswert?

Danke, hab eine Lösung gefunden:

def fenster_raeumen():
    list_widgets=fenster.grid_slaves()
    for i in list_widgets:
        i.destroy()

So werden die Elemente wirklich zerstört und es gibt keine Memory Leaks.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren