擅长:python、mysql、java
<p>我建议您使用<a href="http://pygame.org/docs/ref/key.html#pygame.key.get_pressed" rel="nofollow">^{<cd1>}</a>检查当前的按键集。你知道吗</p>
<p>在您的场景中,当您按下并向上释放(按该顺序)时,速度设置为0,因此您需要检查当前事件所按下的键。你知道吗</p>
<p>以下是相关部分的工作版本:</p>
<pre><code>def current_speed():
# uses the fact that true = 1 and false = 0
currently_pressed = pygame.key.get_pressed()
hdir = currently_pressed[pygame.K_RIGHT] - currently_pressed[pygame.K_LEFT]
vdir = currently_pressed[pygame.K_DOWN] - currently_pressed[pygame.K_UP]
return hdir * 4, vdir * 4
while running:
clock.tick(60)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
player.hspd, player.vspd = current_speed()
#Clear the screen
display.fill(white)
#Move objects
player.move()
#Draw objects
player.draw()
#Update the screen
pygame.display.flip()
</code></pre>