为什么写这个教程

学Python的应该都知道,pygame是用来写游戏的,但也可以用来写页面,不过有些操作很繁琐,要导入用于关闭游戏的sys,还要通过pygame.init()初始化游戏,但pgzero不仅有pygame里面基本所有功能,而且操作简单,不过网上pgzero的教程少之又少,我准备写一套教程帮助大家。

导入模块

import pgzrun

可以通过这个语句导入模块,但如果你比较懒,使用模块中的功能时不想写太长的模块名,你可以用as功能起个别名,也可以直接用下面的代码,省略模块名。

from pgzrun import * #使用时直接可以这样 go()

页面初始化

接下来我们要设置窗口大小和窗口名称,可以用以下语句。

WIDTH = 1002 HEIGHT = 687 TITLE = '游戏大厅'

应该没有不懂英文的吧,宽度是1002像素,高度是687像素,窗口标题是游戏大厅。

有的人可能会有问题,为什么设置一个变量就可以设置窗口大小呢?所以我们在代码最后要加一行pgzrun.go(),这个函数中包含很多代码,其中有一行就是调用pygame的语句。

screen = pygame.display.set_mode((WIDTH, HEIGTH))

但是我们不用另外导入pygame,因为pgzero已经把pygame封装进去了,现在你可以试试加上pgzrun.go()运行一下代码效果应该是这样的。

pygame需要哪些库支持(pygame之pgzero)(1)

创建和绘制对象

既然窗口出来了,我们就可以添加背景和图片对象。

对象其实就是图片或者字符,如果你要创建背景和图片对象,你必须要在代码目录下创建一个文件夹,叫images,把图片保存进去,但在代码里写文件路径时,不需要写images/xxx.png或images/xxx.jpg。

bg = Actor('背景.png') pic = Actor('图片.png')

这行代码就创建了一个背景对象和一个图片对象,其实这两个本质上是一样的,把背景和图片这两个词互换也没有问题,bg和pic这两个单词只是一个变量,你设置什么名称都可以。

现在你运行还是一个空空的窗口,这是因为你只是创建了对象,并没有绘制,绘制对象可以用以下代码

def draw(): bg.draw() pic.draw()

注意要先绘制背景对象,再绘制图片对象,就像一些P图软件的贴图,如果先把图片对象贴上去,再贴背景,图片对象就被盖住了,不过你创建对象的时候可以不分先后顺序。

看一下我这里的效果图,素材可以到最后领取。

pygame需要哪些库支持(pygame之pgzero)(2)

让对象动起来

在这个页面里对象的位置是用坐标来表示的,其实让对象动起来就是改变对象的坐标,背景的坐标一般不会改变,编程里面的坐标多种多样,不像数学,turtle里面中心点是0,pgzero里面和数学差不多,左上角是0,具体的区别我贴张图吧。

pygame需要哪些库支持(pygame之pgzero)(3)

我们了解了坐标,对象的初始位置也可以用坐标来设置,具体怎么让对象动起来我在篇文章会讲解,我先卖个关子。

素材和源代码

import pgzrun WIDTH = 1002 HEIGHT = 687 TITLE = '游戏大厅' bg = Actor('背景.png') pic = Actor('图片.png') def draw(): bg.draw() pic.draw() pgzrun.go()

素材下载:

  1. 背景.png——「链接」
  2. 图片.png——「链接」

代码有问题,图片链接打不开欢迎留言哦!

第一次写文章,大家多多关照!

,