【问题标题】:Update method in PygletPyglet 中的更新方法
【发布时间】:2016-06-14 14:45:09
【问题描述】:

我是 pyglet 的新手,我对屏幕上的图像更新有疑问。每次鼠标按下都要改变计数,但我一直都是零,我哪里出错了,我该如何解决?

from pyglet.window import mouse
from pyglet import *
import pyglet

window = pyglet.window.Window(800, 600)
n = 0
label = pyglet.text.Label(str(n), x = window.width/2, y = window.width/2 )

@window.event
def on_mouse_press(x, y, button, modifiers):
    if button == mouse.LEFT:
        global n
        n += 1

@window.event
def on_draw():
    window.clear()
    label.draw()

def update():
    pass

pyglet.app.run()
pyglet.clock.schedule_interval(update, 1/30.0)

谢谢!

【问题讨论】:

    标签: python pyglet pyopengl


    【解决方案1】:

    您需要再次创建标签才能更改其值(或更好地修改label.text 属性)!实际上,您没有将n 传递给pyglet.text.Label,而是“动态”创建了一个包含该值的字符串。

    @window.event
    def on_mouse_press(x, y, button, modifiers):
        if button == mouse.LEFT:
            global n
            n += 1
            label.text = str(n)
    

    希望对你有帮助。

    【讨论】:

    • 对不起,我会处理label,但是如何在on_mouse_press 方法中创建一个新的基元,如GL_POINTS,坐标为(x, y)
    • @Artur123 恐怕我帮不了你,我从没用过 Pyglet 和 OpenGL。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-26
    • 2012-04-21
    • 1970-01-01
    • 1970-01-01
    • 2020-03-31
    • 1970-01-01
    相关资源
    最近更新 更多