-2
A
回答
0
你可以使用一個簡單的遞歸循環列出您的主窗口中的所有子wigets:
def all_children (window) :
_list = window.winfo_children()
for item in _list :
if item.winfo_children() :
_list.extend(item.winfo_children())
return _list
然後,只需使用此列表:
widget_list = all_children(window)
for item in widget_list:
item.pack_forget()
+0
謝謝!問題解決完美。 –
+0
不要忘記接受這是一個正確的答案,如果它解決了你的問題! – TmZn
1
你需要做的是建立一個什麼框架到您的主窗口,並將所有要清除的內容放在該框架內的某個點。那麼你只需做frame_name.destroy()
下面的例子有一個按鈕,它創建一個包含多個標籤小部件和一個按鈕的框架。
該按鈕調用一個方法,將摧毀框架及其中的所有內容。
然後你可以用第一個按鈕重新創建框架。
讓我知道如果您有任何問題:
import tkinter as tk
class ExampleApp(tk.Frame):
def __init__(self, master):
tk.Frame.__init__(self, master)
self.master = master
self.some_frame = None
tk.Button(self.master, text="Create new frame with widgets!", command = self.create_stuff).pack()
def create_stuff(self):
if self.some_frame == None:
self.some_frame = tk.Frame(self.master)
self.some_frame.pack()
for i in range(5):
tk.Label(self.some_frame, text = "This is label {}!".format(i+1)).pack()
tk.Button(self.some_frame, text="Destroy all widgets in this frame!",
command= self.destroy_some_frame).pack()
def destroy_some_frame(self):
self.some_frame.destroy()
self.some_frame = None
root = tk.Tk()
my_example = ExampleApp(root)
root.mainloop()
相關問題
- 1. 如何清除父窗口小部件中的所有窗口小部件?
- 2. 有沒有辦法一次清除所有JavaScript定時器?
- 3. 有沒有辦法將除了一個之外的所有窗口最小化?
- 4. 有沒有辦法一次性刪除localStorage的全部內容?
- 5. 如何清除tkinter文本小部件中的所有內容?
- 6. 有沒有辦法讓一個窗口的所有BindingExpression對象?
- 7. 有沒有辦法一次性清理特定形式的所有字段?
- 8. 碼頭不起作用:有沒有辦法清除它?
- 9. 有沒有辦法讓s tkinter小部件失去焦點?
- 10. 有沒有辦法枚舉所有的屬性,並逐一釋放它們?
- 11. 有沒有辦法根據窗口大小調整所有項目的大小?
- 12. 清除Tkinter中的畫布而不刪除所有東西
- 13. Android AlarmManager:有沒有辦法清除所有設置的鬧鐘?
- 14. 有沒有辦法清除我所有的TFS掛起更改?
- 15. 有沒有辦法減小NSWorkSpace啓動的窗口大小?
- 16. 在Tiles 2中,有沒有辦法引用另一個定義或屬性而不直接繼承?
- 17. 有沒有辦法編輯一個符號鏈接而不先刪除它?
- 18. 有沒有辦法清除所有會話中的一些會話數據?
- 19. 沒有窗口的Tkinter messagebox?
- 20. 有沒有辦法清除所有超時?
- 21. C - 有沒有辦法從我的窗口中刪除mvwprintw? (Ncurses)
- 22. 有沒有辦法刷新JavaScript中的窗口屬性?
- 23. 有沒有辦法清除CookieContainer?
- 24. 有沒有辦法清除uipickerview選擇?
- 25. 有沒有辦法清除AS3/AIR
- 26. 有沒有辦法一次指定CMakeList中的所有GDCM庫?
- 27. 有沒有辦法在Ghost.py中設置窗口大小?
- 28. 有沒有辦法下載所有的Java EE接口?
- 29. 沒有佈局的父窗口小部件上的中心窗口小部件
- 30. 有沒有辦法刪除所有會話/清除同一個itme中的所有身份?
你是什麼意思'不使用pack_forget.'? – xmcp
把它們放在一個單獨的框架中,根據需要添加/刪除框架? – chepner
https://stackoverflow.com/q/15995783/7432 –