如何解决如何更新 pyglet 窗口中的给定值?
#Noobquestion。 我希望 valueA 在窗口中每 n 秒更新一次。 我现在有这个:
#returns a number from a website
def webSrapper():
[Code]
returns (valueA)
window = pyglet.window.Window(1280,720)
label = pyglet.text.Label('Itemcount: ' +webSrapper())
@window.event
def on_draw():
window.clear()
label.draw()
pyglet.app.run()
解决方法
您需要的是 pyglet.clock.schedule_interval(function,dt)
函数。它需要一个函数和一个周期来调用它,然后定期运行该函数。在你的情况下,你会做类似的事情
from pyglet import clock
#your code
def update_label(dt):
label.text = 'Itemcount: ' +webSrapper()
pyglet.clock.schedule_interval(update_label,5)
pyglet.app.run
这将每 5 秒将 label
的文本设置为 'Itemcount: ' +webSrapper()
。函数 update_label
需要 dt
参数的原因是因为 pyglet.clock.schedule_interval
自上次作为 dt
运行以来总是打发时间。
我从 https://pyglet.readthedocs.io/en/latest/programming_guide/time.html
获得了所有这些信息版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。