我最近在我的Mac上重新安装了pygame.我安装了pygame 1.9.2a0.我在我的
Windows上有相同的版本和之前在这台Mac上的相同版本.但是这个新装置让我得到了奇怪的结果.我注意到所有绘制命令都工作正常,但由于某种原因点击pygame窗口没有.窗口在后台打开,这不正常,但这不是一个大问题.但随后所有按键被重定向到终端/ IDE(从应用程序运行).我在下面附上了一个我正在测试的非常简单的程序.该程序只查找转义键.请注意,这在我的Windows机器上运行正常.
TL; DR:当选择窗口时,为什么按键被发送到终端而不是pygame窗口的事件循环.
我对这个问题感到困惑,主要是因为我之前没有遇到过这样的问题.我也不确定如何调试此问题.如果需要其他信息,我很乐意提供.
import pygame
import sys
from pygame.locals import *
pygame.init()
size = width, height = 100, 100
screen = pygame.display.set_mode(size)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
elif event.type == KEYDOWN:
if event.key == K_ESCAPE:
pygame.event.post(pygame.event.Event(QUIT))
screen.fill((30, 30, 30))
pygame.display.flip()
对于好奇:
> MacOSX 10.10.1
> Python 3.4.2(通过pyenv)
> Pygame:1.9.2a0
更新:
我有一个理论认为其中一个较新的提交中出现了某种问题.所以我决定将他们的存储库拉下来并恢复到之前的提交.这似乎很有希望,特别是因为他们在2015年1月初就有8个左右的拉动请求“大爆炸”合并.所以我在这次大规模合并发生之前将存储库拉回到提交,问题完全相同.我决定对其他几个提交(合并位置之前和之后)执行此操作,但仍然没有更改.有什么建议?