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戻り値と等しい値を持っています。さらに、このメソッドは常に返されます(したがって、エラーの NoneType )。コードを次のようにします。gridLabelNone

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の戻り値である ではなく、ラベルを指すようになりました。gridNone

于 2013-09-30T15:34:07.277 に答える