Hallo,
kann man irgendwie alle Widgets in einem Frame löschen?
Ich habe schon ziemlich viel gegoogelt und bin auf ungefähr gar nichts gestoßen.
Kennt ihr eine Antwort?
Danke :K
Frame alle "Kinder" löschen
-
- User
- Beiträge: 59
- Registriert: Freitag 31. Mai 2013, 21:18
ImmmerEineGuteIdee
|=|=|=|=|=|=|=|
HardwareManager
|=|=|=|=|=|=|=|
HardwareManager
Zum Beispiel den Frame löschen, oder noch besser gar nichts löschen sondern austauschen.
Hallo,
ich arbeite gerade ein Tutorial zum Grid Geometry Manager durch. Da gibt es die Methoden forget und remove. Bei forget wird das widget vom Bildschirm entfernt und alle eingestellten Optionen zum Widget gehen verloren. Bei remove verschwindet das Widget auch, aber die Optionen bleiben erhalten.
Bei anderen Managern wird es vielleicht die gleichen oder ähnliche Methoden geben.
mfg
ich arbeite gerade ein Tutorial zum Grid Geometry Manager durch. Da gibt es die Methoden forget und remove. Bei forget wird das widget vom Bildschirm entfernt und alle eingestellten Optionen zum Widget gehen verloren. Bei remove verschwindet das Widget auch, aber die Optionen bleiben erhalten.
Bei anderen Managern wird es vielleicht die gleichen oder ähnliche Methoden geben.
mfg
Hi bfm
So kannst du auch alle Widgets aus einem Frame entfernen:
Gruss wuf 
So kannst du auch alle Widgets aus einem Frame entfernen:
Code: Alles auswählen
#!/usr/bin/env python
# coding: UTF-8
try:
#~~ For Python 2.x
import Tkinter as tk
except ImportError:
#~~ For Python 3.x
import tkinter as tk
TEST_WIN_XPOS = 0
TEST_WIN_YPOS = 0
class Test(object):
def __init__(self, title):
self.win = tk.Tk()
self.win.title(title)
#self.win.geometry('+{0}+{1}'.format(TEST_WIN_XPOS, TEST_WIN_YPOS))
self.win.geometry('300x300')
self.win.protocol("WM_DELETE_WINDOW", self.close)
self.main_frame = tk.Frame(self.win, bg='steelblue')
self.main_frame.pack(fill='both', expand=True)
widgets = [tk.Button(self.main_frame, text=nr, bd=0).pack(expand=True,
pady=2) for nr in range(6)]
button = tk.Button(self.win, text='Alle Widgets entfernen', bd=1,
command=self.remove_widgets).pack()
def remove_widgets(self):
for widget in self.main_frame.winfo_children():
widget.destroy()
def run(self):
self.win.mainloop()
def close(self):
print("Do something before shutdown")
self.win.destroy()
Test("Remove Widgets").run()

Take it easy Mates!