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!
yesitsme schrieb: > gibts da kein grid_remove() oder sowas? Klar. Ergänzend gibt's auch grid_forget.
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.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.