为了账号安全,请及时绑定邮箱和手机立即绑定

在 PyGlet 中创建窗口

在 PyGlet 中创建窗口

慕婉清6462132 2023-03-22 16:25:21
我开始学习PyGlet(用于游戏的 Python 框架)。我制作了默认窗口,但是当我将它滑到显示器的边缘时,它看起来像这样:import pygletwindow = pyglet.window.Window(800, 600, "PyGlet Window")pyglet.app.run()有什么问题?感谢大家的支持!
查看完整描述

1 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

这与缓冲区以及窗口如何处理屏幕外的窗口有关。IIRC 它们被优化掉了,窗口的缓冲区或区域不会被自动清除。如果您不清除它或没有事件触发重新渲染,则缓冲区中的任何内容都将是可见的。


最简单的解决方案是手动调用.clear()window 对象:


import pyglet


window = pyglet.window.Window(800, 600, "PyGlet Window")


def callback(dt):

    print('%f seconds since last callback' % dt)


@window.event

def on_draw():

    window.clear()

    window.flip() # Not necessary, but probably doesn't hurt


pyglet.clock.schedule_interval(callback, 0.5)   # called twice a second

pyglet.app.run()

任何时候你引起一个事件,绘制函数都应该被触发,如果你on_draw包含window.clear()它应该清除任何旧的工件。


查看完整回答
反对 回复 2023-03-22
  • 1 回答
  • 0 关注
  • 128 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信