1
Mac OSX 10.10.3 및 Pygame 1.9.2에서 python3.4 사용 .12932 & SDL 1.2. 마우스 이벤트가 표시되는 동안 키보드 이벤트가 이벤트 루프에서 발견되지 않습니다. 키 스트로크는 도움이되지 않으면 서 터미널로 전달됩니다. 샘플 코드 :파이 게임 및 키보드 이벤트
import pygame, sys
from pygame.locals import *
pygame.init()
display = pygame.display.set_mode((500,500))
while True:
#wait for a single event from the queue
pygame.event.pump()
events = pygame.event.get()
for event in events:
if event.type == QUIT:
print('quitting')
pygame.quit()
sys.exit()
else:
if event.type == KEYDOWN:
if event.key == K_LEFT:
print ("LEFT")
if event.key == K_RIGHT:
print ("RIGHT")
else:
print (event.key)
if event.type == KEYUP:
print('KEYUP')
if event.type == pygame.MOUSEBUTTONDOWN:
print('got MOUSEBUTTONDOWN')
도움이 되셨습니까? 비슷한 이전 질문에 대한 대답은 내 문제를 해결하지 못했습니다.
_ "이전 질문에 대한 답이 나와도 문제가 해결되지 않았습니다."- 어떻게 그렇게 할 수 있습니까? 다른 게시글에서 정확히 이해하지 못했던 점은 무엇입니까? –
이 코드는 나를 위해 (리눅스에서) 작동합니다. 그러나 윈도우가 포커스를 가지고있는 경우에만 시스템이 키/마우스 이벤트를 파이 게임에 전송한다는 것을 알아야합니다. 당신이 터미널에 집중한다면 시스템은 키를 터미널로 직접 보냅니다. 어쩌면이게 당신 문제입니다. 다른 창에 집중하거나 PyGame 창을 숨기면 시스템이 PyGame에 키 이벤트를 보내지 않습니다. 그러면 아무 것도 할 수 없습니다. – furas