1

我想让标签出现和消失,但我遇到了grid_forget(). 这是代码的一部分:

def creabackuno():
    showinfo( "Wait..","I am creating the backup, please wait...")
    vsl=Label(gui,text="Working, please wait...",font=("arial",16)).grid(row=20,rowspan=1,column=0,columnspan=1,padx=10,sticky=N)
    try:
        copytree(path,r"backup\dirbackup1\.minecraft")
        showinfo( "OK!","Backup (1) created!")
        vsl.grid_forget()
    except OSError:
        showerror( "Nope!","There is already a backup to restore")
        vsl.grid_forget()

这是控制台的错误:

AttributeError: 'NoneType' object has no attribute 'grid_forget'
4

1 回答 1

5

你目前有vsl等于grid方法的返回值Label。此外,此方法始终返回None(因此,您的错误中的 NoneType )。使您的代码如下所示:

vsl=Label(gui,text="Working, please wait...",font=("arial",16))
vsl.grid(row=20,rowspan=1,column=0,columnspan=1,padx=10,sticky=N)

现在vsl指向标签,而不是grid方法的返回值,即None.

于 2013-09-30T15:34:07.277 回答