【发布时间】:2014-09-03 17:59:38
【问题描述】:
我一直在 Tkinter 中制作程序,基本上我想删除所有放置在要删除的窗口上的图像。看到我创建(或尝试:P)的功能负责清除窗口,我需要它能够从程序中的任何位置删除我想要的任何内容。
此窗口上有 2 个图像,img 和 img1。 5000 秒后? (另一件事我不确定,但还没有看过那一点)计时器将用完并导致该功能。但是我似乎在格式化函数错误。
如您所见,我尝试使用 (*A) 但这似乎只是用于打印字符串等,并且无法识别 .destroy()。我尝试的另一件事是具有如下功能:
def removewidgets(A)(B)(C)(D):
A.destroy()
B.destroy()
C.destroy()
D.destroy()
return;
但我确信这是一种糟糕的方法,而且无论如何它都不起作用哈哈。 真的希望有人能解决我的问题,非常感谢!
代码如下。
import sys
from tkinter import *
from PIL import Image, ImageTk
#______________________________________________________________________________________
SWH = Tk()
SWH.geometry("1024x950+130+0")
SWH.title("ServiceWhiz.")
#_______________________________________________________________#GlobalFunctions#______
#ClearAllWidgets
def removewidgets(*A):
A.destroy()
return;
#_______________________________________________________________#LoadingPage#__________
load = Image.open("Logo.png")
render = ImageTk.PhotoImage(load)
img = Label(SWH,image=render)
img.image = render
img.place(x=458,y=250)
load = Image.open("PoweredByServiceWhiz.png")
render = ImageTk.PhotoImage(load)
img1 = Label(SWH,image=render)
img1.image = render
img1.place(x=362,y=612.5)
img.after(5000, removewidgets(img, img1))
【问题讨论】:
-
嗯。继续研究这个,我有点完成了这个功能,但我想它不是“专业的”。仍然对其他人关于这个主题的知识感兴趣。但是,关于 img.after(5000) 这个,就像 time.sleep() 在打开窗口之前等待时间一样,我如何让它打开窗口然后等待时间?
标签: python function parameters tkinter destroy