我是Python的初学者。我试图使用pygame模块移动图像。但是我无法在python中移动图像的位置。你能帮我理解我做错了吗?
import pygame, sys
from pygame.locals import *
pygame.init()
image = pygame.image.load("ball.jpg")
image = pygame.transform.scale(image, (100, 100))
imgrect = image.get_rect()
Canvas = pygame.display.set_mode((500, 500))
pygame.display.set_caption('Text Input')
imgrect.left = 200
imgrect.top = 200
Canvas.blit(image, imgrect)
pygame.display.update()
while True:
for event in pygame.event.get():
if event.type == KEYDOWN :
if event.key == K_ESCAPE:
pygame.quit()
sys.exit()
if event.key == K_UP:
imgrect.top += 1
if event.key == K_DOWN:
imgrect.top -= 1
答案 0 :(得分:1)
基本游戏循环应该做三件事:处理事件,更新和绘制。我看到了更新矩形位置的逻辑,但是你没有在新位置重绘图像。
我在游戏循环的底部添加了一些线来绘制场景。
while True:
# handle events
# update logic
# draw
Canvas.fill((0, 0, 0)) # Clears the previous image.
Canvas.blit(image, imgrect) # Draws the image at the new position.
pygame.display.update() # Updates the screen.