函数中的全局变量

2024-10-02 00:41:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图告诉一个函数,从屏幕上删除按钮lb使用地点。忘了()但是我遇到了一个错误,因为我已经将lb按钮定义为另一个函数中的全局变量,因此每次它试图调用它时,都不会“看到”全局变量。我知道为什么它会给我错误我只是不知道如何纠正它,任何帮助将不胜感激。在

def page4():
    master.title('Page 4')
    #draw
    c19.grid(pady=slpady)
    c19.grid(row=sly,column=slx1)
    c20.grid(row=sly,column=slx2)
    c21.grid(row=sly,column=slx3)
    c22.grid(row=sly,column=slx4)
    c23.grid(row=sly,column=slx5)
    c24.grid(row=sly,column=slx6)
    rec.grid(row=rec_y, column=rec_x,columnspan=3)
    clear_4.grid(row=clear_y, column=clear_x,columnspan=3)
    #hide
    c1.grid_remove()
    c2.grid_remove()
    c3.grid_remove()
    c4.grid_remove()
    c5.grid_remove()
    c6.grid_remove()
    c7.grid_remove()
    c8.grid_remove()
    c9.grid_remove()
    c10.grid_remove()
    c11.grid_remove()
    c12.grid_remove()
    c13.grid_remove()
    c14.grid_remove()
    c15.grid_remove()
    c16.grid_remove()
    c17.grid_remove()
    c18.grid_remove()
    new_show.grid_remove()
    save_show.grid_remove()
    load_show.grid_remove()
    pre_1.grid_remove()
    pre_2.grid_remove()
    pre_3.grid_remove()
    pre_4.grid_remove()
    clear_1.grid_remove()
    clear_2.grid_remove()
    clear_3.grid_remove()
    lb.place_forget()

#Presets
def presets():
    master.title('Presets')
    pre_1.grid(row=1,column=1,padx=ppadx, pady=ppady)
    pre_2.grid(row=1,column=2,padx=ppadx, pady=ppady)
    pre_3.grid(row=2,column=1,padx=ppadx, pady=ppady)
    pre_4.grid(row=2,column=2,padx=ppadx, pady=ppady)
    global lb
    lb=Button(master,width=20,height=5,text='LOCK',bg='burlywood1',command=lockscreen)
    lb.place(x=450,y=580)

我得到的错误是:

^{pr2}$

Tags: master错误columnpreremovegridrowclear
2条回答

在启动任何函数之前初始化lb。在

我把全局lb和lb=按钮(master,width=20,height=5,text='LOCK',bg='burlywood1',command=lockscreen)移到代码的顶部,这样它就失去了任何功能,然后不得不重新排列我的其余代码,以便按钮(锁屏)调用的函数位于预设函数的上方。谢谢你的帮助!在

相关问题 更多 >

    热门问题