理解事件
我们上一个程序,会一直运行下去,直到你关闭窗口而产生了一个QUIT事件,Pygame会接受用户的各种操作(比如按键盘,移动鼠标等)产生事件。事件随时可能发生,而且量也可能会很大,Pygame的做法是把一系列的事件存放一个队列里,逐个的处理。一句话就是使用者做的操作都叫产生事件,通过键盘或者鼠标。
事件检索
使用pygame.event.get()来处理所有的事件。如果我们使用pygame.event.wait(),Pygame就会等到发生一个事件才继续下去。一般游戏中不太实用,因为游戏往往是需要动态运作的;而另外一个方法pygame.event.poll()就好一些,一旦调用,它会根据现在的情形返回一个真实的事件,或者一个“什么都没有”。下表是一个常用事件集:
我们先来写一个可以把所有方法输出的程序
#-*- coding:utf-8 -*-
#导入相关块
import pygame
from pygame.locals import *
from sys import exit
#初始化
pygame.init()
#窗口大小
SCREEN_SIZE = (640, 480)
screen = pygame.display.set_mode(SCREEN_SIZE, 0, 32)
#设定字体(使用字体模块)这里是默认字体
font = pygame.font.SysFont('arial', 16)
font_heigh = font.get_linesize()
#定义事件列表
event_text = []
#页面循环
while True:
#只有在发