如何从函数中刷新变量的值,以便我的if语句可以识别它?

时间:2018-11-17 06:15:02

标签: python python-3.x tkinter

我正在尝试编写一个游戏,该游戏将在用户按下按钮时更改屏幕。我想使用'count'变量触发一个if语句,该语句将删除页面上的所有内容并创建下一个屏幕,但是我的if语句在按下按钮后将无法识别'count'的值更改。我使用tkinter是因为这是我所熟悉的唯一模块,因此我对编码非常陌生。我也尝试使用while循环而不是if语句,但这没有用。使用if语句的目的是使我不必在第一个按钮的功能内编写其余所有程序。我希望对其进行某种程度的线性编码,以便可以自己轻松管理。如果有人知道如何为语句刷新变量或使用其他可行的语句类型,则将非常有帮助。我目前在此程序中使用以下模块:tkinter,time和os。谢谢!

count=0

#ALLOWS THE CONDITION TO BE MET TO MOVE SCREENS
def addCount():
    global count
    count+=1
    print(count)

#EXITS PROGRAM
def exitpls(*exitB):
    root.destroy()

#CREATE WINDOW
root = Tk()
root.title(";)")
root.config(bg="white")

#CREATE FRAME
frame = Frame(root, bg="white")
frame.pack(anchor=CENTER, side=BOTTOM, pady=15, expand=1)

#SIZE WINDOW
w, h = root.winfo_screenwidth(), root.winfo_screenheight()
#window.overrideredirect(1) #ENABLE TO GO FULLSCREEN
root.geometry("%dx%d+0+0" % (w, h))
root.bind("<Escape>", exitpls)

# !FIRST SCREEN! Intro
introImagePath = "us.gif"
introImage = PhotoImage(file=introImagePath)
introImageLabel = Label(frame, image=introImage)
introImageLabel.grid(row=0, column=0, sticky=N, pady=10)

introLabel = Label(frame, text=introMessage, font="none 25", width=54, height=6, relief="sunken")
introLabel.grid(row=1, column=0, sticky=N, pady=10)

introButton = Button(frame, width=32, command=addCount, text="R  E  A  D  Y", font="none 40 bold", relief="raised")
introButton.grid(row=2, column=0, sticky=S, pady=10)

while count == 1:
    introImageLabel.grid_forget()
    introLabel.grid_forget()
    introButton.grid_forget()
    break

root.mainloop()

0 个答案:

没有答案