pygame教程合集(pygame事件处理游戏界面进行全屏切换)

pygame教程合集(pygame事件处理游戏界面进行全屏切换)1

作者:好课堂数学编程陈老师

我们在第一个程序里使用了如下的语句

screen = pygame.display.set_mode((800, 800), 0, 32)

也讲述了各个参数的意思,当我们把第二个参数设置为FULLSCREEN时,就能得到一个全屏窗口了

screen = pygame.display.set_mode((640, 480), FULLSCREEN, 32)

注意:如果你的程序有什么问题,很可能进入了全屏模式就不太容易退出来了,所以最好先用窗口模式调试好,再改为全屏模式。

看一下这个示例:

# pygame事件处理游戏界面进行全屏切换 #
# 指定文件名
background_image_filename = C:/陈国华/好课堂资料/python/python资料/xingkong1.jpg
# 导入pygame库
import pygame
# 导入一些常用的函数和常量
from pygame.locals import *
# 初始化pygame,为使用硬件做准备
pygame.init()
# 创建一个窗口
screen = pygame.display.set_mode([800,800], 0, 32)
# 设置窗口标题
pygame.display.set_caption( pygame事件处理游戏界面进行全屏切换 )
background = pygame.image.load(background_image_filename).convert()
running = True
Fullscreen = False
# 游戏主循环
while running:
for event in pygame.event.get():
# 接收到退出事件后退出程
if event.type == QUIT:
running = False
if event.type == KEYDOWN:
if event.key == K_f:
Fullscreen = not Fullscreen
if Fullscreen:
screen = pygame.display.set_mode([800, 800], FULLSCREEN, 32)
else:
screen = pygame.display.set_mode([800,800], 0, 32)
# 将背景图画上去
screen.blit(background, (0, 0))
# 刷新一下画面
pygame.display.update()
pygame.quit()
运行这个程序,默认还是窗口的,按“f ”,显示模式会在窗口和全屏之间切换。

事件(Event) 基本上说是一个用户操作,如按键、点击、鼠标移动等等,或者是一些提示信息,如系统生成的通知。

事件检索

上面程序中,使用了pygame.event.get()来处理所有的事件,这好像打开大门让所有的人进入。然后根据需要进行筛选,过滤,根据不同的事件类型进行处理。

在上面的程序中如果是用户按下关闭按钮(QUIT),那么执行退出;如果是键盘按键按下事件(KEYDOWN),判断是否是f键,然后进行全屏切换。

下表是一个常用事件集:

pygame教程合集(pygame事件处理游戏界面进行全屏切换)2

,

关键词:
pygame
游戏界面

原标题:pygame教程合集(pygame事件处理游戏界面进行全屏切换)