【发布时间】:2014-02-14 17:08:00
【问题描述】:
当我试图捕捉按下的键时,它们会打印在终端中,但不会被 pygame 和脚本捕捉到。脚本执行如下:
>>>import scriptname
>>>scriptname.wa()
脚本名称文件: 导入pygame 从 pygame.locals 导入 *
def wa():
pygame.init()
screen = pygame.display.set_mode((640, 480), 0, 32)
alive_key = True
while alive_key:
for event in pygame.event.get():
if event.type == QUIT:
alive_key = False
elif event.type == KEYDOWN and event.key == K_q:
print '\nThis is not happening\n'
screen.fill((0, 0, 0))
if pygame.mouse.get_pressed()[0]:
pygame.event.post(
pygame.event.Event(KEYDOWN, key=K_q, mod=0, unicode=u'q'))
pygame.display.update()
pygame.quit()
如果事件是在鼠标按下时创建的(如代码所示),它们会起作用。
我使用的是 OS X 10.8.5、python 2.7、pygame2.7 1.9.1。在具有类似配置的 Windows 7 中一切正常。
谢谢!
【问题讨论】:
-
不知道这个问题是不是和this other issue类似...
-
感谢链接,但 python2.6 没有帮助,同样的问题。
标签: python macos pygame keydown