之前我们已经基本了解了Pygame的常用模块,和常用模块的一些方法及功能。现在我们可以简单的用pygame来创建一个可以改变颜色的窗口。一起来看看:
- 首先我们需要导入模块:
import pygame, sys
- 然后需要初始化pygame,我定义了一个pygame_test()方法,所以如果需要执行程序的话,要调用这个方法哟:
import pygame, sys
def pygame_test():
# 初始化
pygame.init()
- 初始化之后就可以开始创建窗口了,我创建了一个500x500的窗口,这时执行程序我们就能看到创建被创建好了,但是窗口出现后马上就会退出:
import pygame, sys
def pygame_test():
# 初始化
pygame.init()
# 创建一个窗口
screen = pygame.display.set_mode((500, 500))
# 设置窗口标题
pygame.display.set_caption('这是一个窗口标题')
pygame_test()
- 所以我们可以给它加上一个while循环,将值设为True(也就是一个死循环)。可以通过不断循环来侦听事件,如果想要退出程序可以使用
sys.exit()
。
import pygame, sys
def pygame_test():
# 初始化
pygame.init()
# 创建一个窗口
screen = pygame.display.set_mode((500, 500))
# 设置窗口标题
pygame.display.set_caption('这是一个窗口标题')
# 通过不断循环来侦听事件
while True:
# get():获取事件的返回值
for event in pygame.event.get():
# 判断事件是否是退出事件,是则退出
if event.type == pygame.QUIT:
# 先退出pygame窗口,再退出程序
pygame.quit()
sys.exit()
pygame_test()
- 这样的话执行代码时,就会弹出一个可以正常运行并关闭的窗口了。如果我们想要给窗口添加背景颜色需要用到fill()方法。比如说我们给窗口添加一个蓝色的背景颜色,然后再添加一个鼠标单击事件,当单击鼠标时,背景颜色会变为粉色。
import pygame, sys
def pygame_test():
# 初始化
pygame.init()
# 创建一个窗口
screen = pygame.display.set_mode((500, 500))
# 设置窗口标题
pygame.display.set_caption('这是一个窗口标题')
# 通过不断循环来侦听事件
while True:
# 给屏幕填充淡蓝色
screen.fill((135, 206, 250))
# get():获取事件的返回值
for event in pygame.event.get():
# 判断事件是否是退出事件,是则退出
if event.type == pygame.QUIT:
# 先退出pygame窗口,再退出程序
pygame.quit()
sys.exit()
# 单击鼠标窗口颜色变为粉红色
if event.type == pygame.MOUSEBUTTONDOWN:
screen.fill((255, 192, 203))
# 更新整个待显示的 Surface 对象到屏幕上
pygame.display.flip()
pygame_test()
关于pygame的模块方法可以看:https://www.jianshu.com/p/a439afd5140d