我是Pyglet的新手,但之前我曾与Pygame和JFrames混淆过。我在使用Pyglet的on_mouse_click()事件时遇到了麻烦。它似乎永远不会被调用,尽管所有其他事件(包括on_mouse_release和on_mouse_drag)。我记录了所有事件,因此它显示了每个发生的事件。
以下是我正在做的简化版本:
import pyglet
window = pyglet.window.Window(width=640, height=480)
window.push_handlers(pyglet.window.event.WindowEventLogger())
label = pyglet.text.Label("Hello world", font_name="Times New Roman" ,
font_size=36, x=window.width // 2, y=window.height // 2,
anchor_x="center, anchor_y="center")
@window.event
def on_mouse_press(x,y,button,mod):
print("Button Pressed")
pyglet.app.run()
我的版本是python 3.6。我正在使用PyCharm IDE(我也通过cmd测试过),Pyglet 1.3.1,我正在使用Windows 10
答案 0 :(得分:3)
我在pyglet版本1.3.1中遇到了同样的问题,除了on_mouse_press()方法之外一切正常,所以我降级到1.3.0版本,现在一切正常。您可以使用pip指定要安装的版本:
pip install pyglet==1.3.0
答案 1 :(得分:1)
1.3.2
没有这个问题。因此,此时您可以升级pyglet版本。