如果不单击

问题描述

我正在使用Pygame制作一个简单的游戏。我已经将Pygame显示器嵌入到Tkinter窗口中。

现在,当我执行此操作时-print(pygame.mouse.get_pos())会打印位置,但是当我移动鼠标时,它不会打印更新的鼠标位置。除非我在显示器上单击,否则它仍会打印以前的鼠标位置。

在将Pygame显示器嵌入Tkinter窗口之前,使用同一程序不会发生这种情况。 因此,事件系统似乎无法正常运行。

有人建议,您可以在Tkinter中检测到事件,然后将其转发给Pygame。但是,我不确定该如何实现。

我该如何处理?我非常感谢您的帮助。谢谢!

解决方法

为了获取鼠标的当前位置,您可以使用名为 pynput 的库。该库使您可以监视和控制键盘和鼠标。要跟踪鼠标,您可以使用以下代码:

from pynput.mouse import Controller

mouse = Controller()
current_pos = mouse.position