什么是Pygame中惯用的方式来告诉它只要按下一个键就一直运行某些东西?使用
我运行以下代码,只有在按下键/按钮时才会在shell中打印:
pygame.key.get_pressed()[pygame.K_p]==True
或者pygame.mouse.get_pressed()==(1,0,0)
时,似乎只有当按键或按钮被按下时才会有反应。例如,应该使用while
循环吗?我运行以下代码,只有在按下键/按钮时才会在shell中打印:
def main():
done = True
while done:
for i in pygame.event.get():
if pygame.key.get_pressed()[pygame.K_a] == 1:
print "Key a is being pressed..."
elif i.type == KEYDOWN and i.key == pygame.K_q:
done = 0
pygame.display.update()
pygame.quit()
main()
for ... in pygame.event.get()
内部使用get_pressed()
。你会重复执行该函数很多次——如果有很多事件——或者零次——如果没有事件的话。 - furas