1
import pygame, random
pygame.init()
screen = pygame.display.set_mode((700,500))
ball = pygame.image.load('C://python32/ball.jpg')
brick = pygame.image.load('C://python32/brick.jpg')
rect1 = ball.get_rect()
rect2 = brick.get_rect()
screen.fill((255,255,198))
screen.blit(ball,rect1)
screen.blit(brick,rect2)
pygame.display.flip()
if rect1.colliderect(rect2):
x=random.randrange(0,550)
y=random.randrange(0,350)
rect2.move(x,y) #<-------This part
pygame.display.flip()
我有2个图像球和砖。当我将它们加载到pygame上时,两个图像相撞。所以如果rect1.colliderect(rect2)应该工作。我通过放置打印功能来测试。但是rect2.move不工作,它不会显示pygame上的变化。哪里不对?rect搬不工作
你在while循环中有你的代码吗?如果不是,则必须在更新位置后再将图像覆盖并再次调用“pygame.display.flip()”。 顺便说一句,你不应该为你的图像使用绝对路径,你也不应该将你的文件和其他资源存储在你的Python目录中。 – skrx