如何让按钮打印出特定的文本?动力学温度

2024-10-01 00:15:18 发布

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

下面,我创建了一个代码来跟踪跑步者的圈数。目前,我创建的按钮跟踪圈数和时间,但不是在GUI窗口上。我想知道如何使来自代码的数据显示在GUI窗口上。在

from Tkinter import *
import time

laps=[0]
gui=Tk()
gui.geometry("200x100")
gui.title("lapping")

def afterbutton():
    label_1=Label(gui,text=end())

def end():
    end = time.time()
    elapsed = end - start
    laps[0]+=1
    print "%s seconds" % (elapsed)
    print "%s lap(s)" % (laps)

starting = raw_input("start? (s to start)")

if starting == "s":
    start = time.time()

button1=Button(gui,command=afterbutton,text="lap")
button1.grid()
button1.pack()

gui.mainloop()

Tags: 代码textimporttimedefguistartend
1条回答
网友
1楼 · 发布于 2024-10-01 00:15:18

您需要在创建按钮的同时创建标签。你需要把它放在格子里打包,就像你用按钮那样。然后,当单击按钮时,您所要做的就是更改标签的文本。它看起来是这样的:

# python 3
from Tkinter import *
import time

laps=[0]
gui=Tk()
gui.geometry("200x100")
gui.title("lapping")

def end():
    end = time.time()
    elapsed = end - start
    laps[0] += 1
    s = "%s seconds %s laps" % (elapsed,laps)
    label1['text'] = s
    print("%s seconds" % (elapsed))
    print("%s lap(s)" % (laps))

starting = raw_input("start? (s to start)")

if starting == "s":
    start = time.time()

button1 = Button(gui, command=end, text="lap")
button1.grid()
button1.pack()
label1 = Label(gui)
label1.grid()
label1.pack()

gui.mainloop()

函数afterbutton不存在了;所有的工作都由end()完成。我保留了你的大部分程序,但是我使用的是py3,所以print是一个函数而不是一个语句。你必须为py2修复这个问题。标签文本由以下设置:

^{pr2}$

当你第一次看到它时,这是一个有点奇怪的语法。在

顺便说一句,我不明白为什么你用一个元素列表来代替一个简单的变量。在

相关问题 更多 >