【发布时间】:2023-03-17 11:55:01
【问题描述】:
此代码应该使黑色矩形在 K_LEFT 或 K_RIGHT 被按下时连续移动,但发生的情况是它只是在按下时移动,然后一旦发生,当鼠标移动时窗口,它移动(当它不应该移动时,它应该只在按下一个键时移动)。 代码如下,希望对你有所帮助:
import pygame
pygame.init()
red = (255,0,0)
white = (255,255,255)
black = (0,0,0)
gameDisplay = pygame.display.set_mode((800,600))
pygame.display.set_caption('Slither')
gameExit = False
lead_x = 300
lead_y = 300
lead_x_change = 0
clock = pygame.time.Clock()
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT:
gameExit = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
lead_x_change = -10
if event.key == pygame.K_RIGHT:
lead_x_change = 10
lead_x += lead_x_change
gameDisplay.fill(white)
pygame.draw.rect(gameDisplay, black, [lead_x, lead_y,10,10])
pygame.display.update()
clock.tick(30)
pygame.quit()
quit()
【问题讨论】:
标签: python-3.x pygame