我想在按'w'时让白线停止移动。我能做什么呢?我怎样才能让它更大胆?白线需要以圆圈嘀嗒移动,当用户按"w"时,白线需要停止移动。
PIVOT = (WINDOW_WIDTH/2, 150)
SWINGLENGTH = PIVOT[1]*0.8
def fill():
class Pendulum(pygame.sprite.Sprite):
pen = Pendulum()
TICK = USEREVENT + 2
pygame.time.set_timer(TICK, TIMETICK)
def input(events):
for event in events:
if event.type == QUIT:
sys.exit(0)
elif event.type == TICK:
pen.update()
#while True:
# input(pygame.event.get())
# pygame.display.flip()
finish = False
while not finish:
for event in pygame.event.get():
if event.type == pygame.QUIT:
finish = True
while True:
input(pygame.event.get())
pygame.display.flip()
if event.type == pygame.KEYDOWN and event.key == pygame.K_w:
#if event.type == pygame.KEYDOWN and event.key == pygame.K_w:
print('Forward')
fill()
#screen.fill((255, 0, 0))
#input(pygame.event.get())
pygame.display.flip()
您可以使用
pygame.key.get_pressed()
来获取所有键的当前状态。
按pygame.key.get_pressed()[pygame.K_w]
检查,如果按下w:
例如
finish = False
while not finish:
for event in pygame.event.get():
if event.type == pygame.QUIT:
finish = True
allKeys = pygame.key.get_pressed()
# move the white line if 'w' is not pressed
if not allKeys[pygame.K_w]:
# [...]
pygame.display.flip()