pygame 学习记录


话不多说上代码:


import pygame
import sys

pygame.init()

size = width, height = 900, 700
speed = [-2, 1]
bg = (255, 255, 255) #RGB

screen = pygame.display.set_mode(size)

pygame.display.set_caption("初次见面,多多关照")

plane = pygame.image.load("3.PNG")

position = plane.get_rect()

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
    
    position = position.move(speed)

    if position.left < 0 or position.right > width:
        plane = pygame.transform.flip(plane, True, False)
        speed[0] = -speed[0]

    if position.top < 0 or position.bottom > height:
        speed[1] = -speed[1]

    screen.fill(bg)
    screen.blit(plane, position)
    pygame.display.flip()
    pygame.time.delay(10)


这是一个在Python界面上加载一个图片并让其上下左右移动的效果


几点说明:

要让飞机图片在Python界面上移动起来就是:创建窗口->加载图片->捕获位置->移动图片->刷新界面   这个过程,下面就从这个顺序讲起。

1、创建窗口:最初在初始化pygame时我们定义了一个窗口:size = width, height = 900, 700

2、加载图片:在这里我们将选好的飞机图片加载到创建的窗口,注意 图片和保存的PY文件要在同一位置:plane = pygame.image.load("3.PNG")

3、获取位置:position = plane.get_rect()

4、图片移动:position = position.move(speed)

5、界面更新: pygame.display.flip()


注释的代码如下:


import pygame
import sys


# 初始化pygame
pygame.init()


size = width, height = 900, 700
speed = [-2, 1]
bg = (255, 255, 255) #RGB


# 创建指定大小的窗口 Surface
screen = pygame.display.set_mode(size)
# 设置窗口标题
pygame.display.set_caption("初次见面,多多关照")


# 加载图片
plane = pygame.image.load("3.PNG")
# 获得图像位置矩形
position = plane.get_rect()


while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
    # 移动图像
    position = position.move(speed)


    if position.left < 0 or position.right > width:
        # 翻转图片
        plane = pygame.transform.flip(plane, True, False)
        # 反方向移动
        speed[0] = -speed[0]


    if position.top < 0 or position.bottom > height:
        speed[1] = -speed[1]


    # 填充背景
    screen.fill(bg)
    # 更新图像
    screen.blit(plane, position)
    # 更新界面
    pygame.display.flip()
    # 延迟10毫秒
    pygame.time.delay(10)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值