我制作了一个游戏,并使用pygame模块作为键盘输入。 但是,它似乎没有响应。 没有错误,但是运行代码时我的按键不起作用。
我尝试使用pygame.key,但是它不起作用。
我不知道这段代码有什么问题。
import pygame
pygame.init()
class keypress():
def check(self):
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.KEYDOWN:
print("Hey, you pressed the key, '0'!")
if event.key == pygame.K_1:
print("Doing whatever")
else:
pass
a = keypress()
if __name__ == "__main__":
while True:
a.check()
当我按下按键时,它基本上什么也没做。
答案 0 :(得分:2)
Pygame will not work without a screen/window defined。
打开一个窗口,并修复了输入处理中的一些小错误〜
pygame.K_0
,而不是KEYDOWN
main
循环中很奇怪。在大多数情况下,代码似乎都可以这样描述:
import pygame
pygame.init()
WINDOW_WIDTH = 400
WINDOW_HEIGHT= 400
screen = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT))
class keypress():
def check(self):
for event in pygame.event.get():
if event.type == pygame.QUIT:
# TODO - handle exiting
pass
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_0:
print("Hey, you pressed the key, '0'!")
elif event.key == pygame.K_1:
print("Doing whatever")
a = keypress()
if __name__ == "__main__":
while True:
a.check()