gpt4 book ai didi

python - Pygame键盘输入问题

转载 作者:太空宇宙 更新时间:2023-11-04 05:31:29 37 4
gpt4 key购买 nike

我正在尝试使用 pygame 获取用户键盘输入。然而,问题是在我以 IDLE 运行我的代码之后,程序永远不会读取键盘输入,无论我输入什么,都会显示在 shell 上。如果我在 PyCharm 上运行我的代码,也会出现同样的问题。任何想法?下面是我的代码:

pygame.init()
screen = pygame.display.set_mode((800, 600))
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == KEYDOWN and event.key == pygame.K_w:
print("Yup!")
pygame.display.flip()

最佳答案

我遇到了完全相同的问题,同样是在使用 Pycharm 和 python 3.6 的 Mac 上。我正在打印事件,并且只记录了 MouseMotion 事件,而不是 KeyDown。

编辑:显然这是一个已知问题:Window does not get focus on OS X with Python 3

这是我的代码,它也应该可以工作:

while not crashed:
for event in pygame.event.get():
print(event)
if event.type == pygame.QUIT:
crashed = True

# get current list
pressed = pygame.key.get_pressed()
if pressed[pygame.K_UP]:
print("UP")

if event.type == pygame.KEYDOWN:
if event.key == pygame.K_1:
print('this DOES work! :)')
elif event.key == pygame.K_LEFT:
x_change = -5
elif event.key == pygame.K_RIGHT:
x_change = 5
elif pressed[pygame.K_UP]:
print("UP")
if event.type == pygame.KEYUP:
if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
x_change = 0

pygame.display.flip()

x += x_change

gameDisplay.fill(black)
ship(x, y)

pygame.display.update()
clock.tick(60)

关于python - Pygame键盘输入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37010409/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com