pygame插入图片后背景不显示图片

  1. 原有代码
import pygame
pygame.init()
screen = pygame.display.set_mode((480,700))
# 绘制背景图像
bg = pygame.image.load("./images/background.png")
screen.blit(bg, (0, 0))
pygame.display.update()
# 绘制英雄飞机图像
hero = pygame.image.load("./images/me1.png")
screen.blit(hero, (200, 500))
pygame.display.update()
# 无限循环防止窗口一闪而过
while True:
     pass

pygame.quit()
  1. 问题分析:发现所有代码都是正确的,但是就是不显示图片;后面发现原来是最新版的pygame需要添加一行代码才会显示图片:pygame.event.get(),所以在update方法的后面增加该行代码才会显示图片,但不需要每插入一个图片就写一次该行代码,只需要在插入的最后一张图片后面写即可(当然每次都写也没有问题)

  2. 修改代码

import pygame
pygame.init()
screen = pygame.display.set_mode((480,700))
# 绘制背景图像
bg = pygame.image.load("./images/background.png")
screen.blit(bg, (0, 0))
pygame.display.update()
# 绘制英雄飞机图像
hero = pygame.image.load("./images/me1.png")
screen.blit(hero, (200, 500))
pygame.display.update()
pygame.event.get()  # 最新版的pygame需要添加此行代码才会更新图片,否则图片不会被插入显示
# 上一行代码不需要每次添加图片都写一次,只需要在最后一个图片插入后写一次即可
# 无限循环防止窗口一闪而过
while True:
     pass

pygame.quit()

说明:如果一个pygame程序有退出功能,那么就不能写pygame.event.get(),同时此时也不需要写也可以显示图像

你可能感兴趣的:(编程进阶)