pygame游戏开发系列4-事件检测

游戏的持续进行,往往是通过不同的事件来驱动的。游戏过程中,发生不同的事情需要做出不一样的反应,比如:点击某个按钮要执行某个操作,按键盘上不同的键也需要做不同的反应,接下来我们讲解一下 pygame 中应该怎么检测和区分事件。
如果对pygame感兴趣想要系统学习,可以看看我录的pygame的视频: https://www.bilibili.com/video/BV1bE411p7Ue

"""__author__ = 余婷"""

import pygame

pygame.init()
screen = pygame.display.set_mode((600, 400))
screen.fill((255, 255, 255))
# 设置窗口标题
pygame.display.set_caption('游戏事件')

pygame.display.flip()

"""
QUIT:关闭按钮被点击事件
MOUSEBUTTONDOWN: 鼠标按下事件
MOUSEBUTTONUP: 鼠标按下弹起
MOUSEMOTION:鼠标移动
鼠标相关事件关心事件产生的位置

KEYDOWN: 键盘按下
KEYUP: 键盘弹起
"""
while True:
    # 每次循环检测有没有事件发生
    for event in pygame.event.get():
        # 不同类型的事件对应的type值不一样
        if event.type == pygame.QUIT:
            exit()

        # 鼠标相关事件
        # pos属性,获取鼠标事件产生的位置
        if event.type == pygame.MOUSEBUTTONDOWN:
            print('鼠标按下', event.pos)

        if event.type == pygame.MOUSEBUTTONUP:
            print('鼠标弹起', event.pos)

        if event.type == pygame.MOUSEMOTION:
            print('鼠标移动', event.pos)

        # 键盘相关事件
        # key属性,被按的按键对应的值的编码
        if event.type == pygame.KEYDOWN:
            print('键盘按键被按下',chr(event.key))

        if event.type == pygame.KEYUP:
            print('键盘按钮弹起', chr(event.key))

发布了40 篇原创文章 · 获赞 11 · 访问量 1464

猜你喜欢

转载自blog.csdn.net/yuting209/article/details/105304907