如何在python中更新标签? [英] How to update a label in python?
本文介绍了如何在python中更新标签?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是python的新手,遇到问题时我正在创建一个小型游戏.我搜索了一个答案,找到了一个答案,但是没有用.
I'm new to python, and I was creating a small game when I got a problem. I searched for an answer, found one, yet it didn't work.
我要制作的游戏或多或少是对Cookie Clicker的重新娱乐,我正在尝试制作具有更新分数的标签,相反,它会创建一个新标签.
The game I'm trying to make is more or less a recreation of Cookie Clicker, and I'm trying to make the label which I have the score on update, instead, it creates a new label.
from tkinter import *
import time
master = Tk()
def uiPrint():
print("")
print(click)
blankLine()
click = 0
mult = 1
dcp1 = 0
def blankLine():
for i in range(20):
print("")
def buttonCommand():
global click
global mult
click += 1*(mult)
uiPrint()
scoreCommand = Button(text=click)
scoreCommand.pack()
mainClickButton = Button(master, text="Click me!", command = buttonCommand)
mainClickButton.pack()
master.title("Cookie Clicker")
photo = PhotoImage(file=r"C:\Users\---\Desktop\Cookie.gif")
label = Label(image=photo)
label.image = photo
label.pack()
mainloop()
推荐答案
我发现了这篇文章:
稍微修改一下就意味着:
A bit modified this means :
from tkinter import *
master = Tk()
def uiPrint():
print("")
print(clickcount)
blankLine()
clickcount=0
click=StringVar() #Updates label if changed
click.set("0");
mult = 1
dcp1 = 0
def blankLine():
for i in range(20):
print("")
def buttonCommand():
global clickcount
global click
global mult
clickcount += 1*(mult)
click.set(str(clickcount)); #Update score
uiPrint()
mainClickButton = Button(master, text="Click me!", command = buttonCommand)
mainClickButton.pack()
master.title("Cookie Clicker")
photo = PhotoImage(file=r"C:\Users\---\Desktop\Cookie.gif")
label = Label(image=photo)
label.image = photo
label.pack()
l = Label(master, textvariable = click) #Score
l.pack()
mainloop();
我另外建议将cookie图像制作为按钮:
I would additonaly suggest to make the cookie image as a button :
from tkinter import *
master = Tk()
def uiPrint():
print("")
print(clickcount)
blankLine()
clickcount=0
click=StringVar() #Updates label if changed
click.set("0");
mult = 1
dcp1 = 0
def blankLine():
for i in range(20):
print("")
def buttonCommand():
global clickcount
global click
global mult
clickcount += 1*(mult)
click.set(str(clickcount)); #Update score
uiPrint()
photo = PhotoImage(file=r"C:\Users\---\Desktop\Cookie.gif")
mainClickButton = Button(master, image=photo, command = buttonCommand)
mainClickButton.pack()
master.title("Cookie Clicker")
l = Label(master, textvariable = click) #Score
l.pack()
mainloop();
两者都经过python 2.7.11和python 3.5.2的测试,它们可以正常工作
Both tested with python 2.7.11 and python 3.5.2, they work fine
这篇关于如何在python中更新标签?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文