目录

pygame.event.pump()

pygame.event.get()

pygame.event.poll()

pygame.event.wait()

pygame.event.peek()

pygame.event.clear()

pygame.event.event_name()

pygame.event.set_blocked()

pygame.event.set_allowed()

pygame.event.get_blocked()

pygame.event.set_grab()

pygame.event.get_grab()

pygame.event.post()

pygame.event.custom_type()

pygame.event.Event()

pygame.event.EventType


pygame.event.pump()

功能:内部进程pygame事件处理程序

属性:pump() -> None

  1. 对于游戏的每一帧,都需要对事件队列进行某种调用。这可以确保程序可以与操作系统的其他部分进行内部交互。如果在游戏中不使用其他事件函数,则应调用 pygame.event.pump() 允许pygame处理内部操作。
  2. 如果您的程序通过其他 pygame.event 函数处理队列上的事件,则不需要此函数功能。
  3. 在事件队列中有一些重要的事情必须在内部处理。主窗口可能需要重新喷绘或响应系统。如果调用事件队列的时间过长,系统可能会确定您的程序已锁定。

注意:此函数只应在初始化 pygame.display 的线程中调用。

pygame.event.get()

功能:从队列中获取事件

属性:

  • get(eventtype=None) -> Eventlist
  • get(eventtype=None, pump=True) -> Eventlist
  1. 此函数将获取所有消息并将其从队列中移除。如果给定类型或类型序列,则只会从队列中删除这些消息。
  2. 如果只从队列中获取特定事件,队列最终可能会填满其他事件。
  3. 如果 pump 是 True(默认),则会调用 pygame.event.pump() 。

New in pygame 1.9.5: pump

pygame.event.poll()

功能:从队列中获取单个事件

属性:poll() -> EventType instance

从队列中返回单个事件。如果事件队列为空,则 pygame.NOEVENT 将立即返回。返回的事件将从队列中删除。

注意:此函数只应在初始化 pygame.display 的线程中调用。

pygame.event.wait()

功能:等待队列中的单个事件

属性:wait() -> EventType instance

从队列中返回单个事件。如果队列为空,则此函数将等到创建一个队列。事件一旦返回就从队列中删除。当程序等待时,它将以空闲状态睡眠。对希望与其他应用程序共享系统的程序很重要。

注意:此函数只应在初始化 pygame.display 的线程中调用。

pygame.event.peek()

功能:测试事件类型是否正在队列中等待

属性:

  • peek(eventtype=None) -> bool
  • peek(eventtype=None, pump=True) -> bool
  1. 如果队列中有任何给定类型的事件正在等待,则返回 True 。如果传递了一系列事件类型且队列中存在,则返回 True 。
  2. 如果 pump 是 True(默认),则会调用 pygame.event.pump() 。

New in pygame 1.9.5: pump

pygame.event.clear()

功能:从队列中删除所有事件

属性:

  • clear(eventtype=None) -> None
  • clear(eventtype=None, pump=True) -> None
  1. 从队列中删除所有事件。如果给定eventtype ,则移除给定的事件或事件序列。此函数除了 None 也会被返回外效果与函数 pygame.event.get() 相同。当清除一个完整的事件队列时,效率会稍微高一些。
  2. 如果 pump 是 True(默认),则会调用 pygame.event.pump() 。

New in pygame 1.9.5: pump

pygame.event.event_name()

功能:从事件id获取字符串名称

属性:event_name(type) -> string

  1. 返回表示给定事件类型的名称(大写字母样式)的字符串。
  2. 为用户事件ID范围中的所有值返回"UserEvent" 。当事件类型不存在时返回"Unknown"。

pygame.event.set_blocked()

功能:控制队列中允许哪些事件

属性:

  • set_blocked(type) -> None
  • set_blocked(typelist) -> None
  • set_blocked(None) -> None
  1. 给定的事件类型不允许出现在事件队列中。默认情况下,所有事件都可以放置在队列中。
  2. 多次禁用事件类型是安全的。
  3. 如果 None 作为参数传递,则阻止将所有事件类型放置在队列中。

pygame.event.set_allowed()

功能:控制队列中允许哪些事件

属性:

  • set_allowed(type) -> None
  • set_allowed(typelist) -> None
  • set_allowed(None) -> None
  1. 允许给定的事件类型出现在事件队列中。默认情况下,所有事件类型都可以放置在队列中。
  2. 多次启用事件类型是安全的。
  3. 如果 None 作为参数传递,则允许将所有事件类型放置在队列中。

pygame.event.get_blocked()

功能:测试是否从队列中阻止了某一类型的事件

属性:

  • get_blocked(type) -> bool
  • get_blocked(typelist) -> bool

如果队列中阻止了给定的事件类型,则返回 True 。如果传递了一系列事件类型,则如果其中任何事件类型被阻止,则返回 True 。

pygame.event.set_grab()

功能:控制输入设备与其他应用程序的共享

属性:set_grab(bool) -> None

  1. 当程序在窗口环境中运行时,它将与其他有焦点的应用程序共享鼠标和键盘设备。如果程序将事件抓取设置为True,它将锁定程序中的所有输入。
  2. 最好不要总是获取输入,因为这样会阻止用户在系统上执行其他操作。

pygame.event.get_grab()

功能:测试程序是否共享输入设备

属性:get_grab() -> bool

此应用程序的输入事件被抓取时返回 True 。

pygame.event.post()

功能:在队列中放置新事件

属性:post(Event) -> None

  1. 将给定事件放置在事件队列的末尾。
  2. 通常用于在队列中放置 pygame.USEREVENT 事件。尽管可以放置任何类型的事件,但如果使用系统事件类型,程序应确保使用适当的值创建标准属性。
  3. 如果事件队列已满会提起 pygame.error 文件。

pygame.event.custom_type()

功能:生成自定义用户事件类型

属性:custom_type() -> int

  1. 预订一个 pygame.USEREVENT 事件用于自定义用途。
  2. 如果事件太多会提起 pygame.error 文件。

New in pygame 2.0.0.dev3.

pygame.event.Event()

功能:创建新事件对象

属性:

  • Event(type, dict) -> EventType instance
  • Event(type, **attributes) -> EventType instance

创建具有给定类型和属性的新事件。属性可以来自具有字符串键的字典参数,也可以来自关键字参数。

pygame.event.EventType

属性:表示事件的pygame对象

pygame.event.EventType.type 事件类型标识符
pygame.event.EventType.__dict__ 事件属性字典

一个pygame对象代表一个事件。用户事件实例通过调用 pygame.event.Event()函数创建。 EventType 类型不可直接调用。 EventType实例支持属性分配和删除。

type

功能:事件类型标识符

属性:type -> int

只读。对于用户创建的事件对象,这是传递给 pygame.event.Event()的类型参数。

__dict__

功能:事件属性字典

属性:__dict__ -> dict

只读。事件的事件类型特定属性。dict属性是向后兼容性的。【例如,KEYDOWN事件的属性是unicode、key和mod。】

New in pygame 1.9.2: Mutable attributes.

整理自:https://www.pygame.org/docs/ref/event.html

pygame中event模块方法详解相关推荐

  1. pygame中draw模块方法详解

    目录 pygame.draw.rect() pygame.draw.polygon() pygame.draw.circle() pygame.draw.ellipse() pygame.draw.a ...

  2. pygame中display模块方法详解

    目录 pygame.display.init() pygame.display.quit() pygame.display.get_init() pygame.display.set_mode() p ...

  3. pygame中time模块方法详解

    目录 系统方法 pygame.time.get_ticks() pygame.time.wait() pygame.time.delay() pygame.time.set_timer() pygam ...

  4. pygame中精灵的方法详解

    目录 pygame.sprite.Sprite pygame.sprite.Sprite.update() pygame.sprite.Sprite.add() pygame.sprite.Sprit ...

  5. python中importlib模块安装_Python中标准模块importlib详解

    Python中标准模块importlib详解 模块简介 Python提供了importlib包作为标准库的一部分.目的就是提供Python中import语句的实现(以及__import__函数).另外 ...

  6. java多线程中的join方法详解

    java多线程中的join方法详解 方法Join是干啥用的? 简单回答,同步,如何同步? 怎么实现的? 下面将逐个回答. 自从接触Java多线程,一直对Join理解不了.JDK是这样说的:join p ...

  7. Java中的main()方法详解

    源文作者:leizhimin    源文链接:http://lavasoft.blog.51cto.com/62575/53263 源文作者版权申明: 版权声明:原创作品,允许转载,转载时请务必以超链 ...

  8. Python 在子类中调用父类方法详解(单继承、多层继承、多重继承)

    Python 在子类中调用父类方法详解(单继承.多层继承.多重继承)   by:授客 QQ:1033553122   测试环境: win7 64位 Python版本:Python 3.3.5 代码实践 ...

  9. php 文件扫描去重,PHP中的去重方法详解和文件下载

    本文主要和大家分享PHP中的去重方法详解和文件下载,在php中文件导入过程中,经常会遇到重复事件,那么就需要我们去重,然后进行下载. 1.思想 先设置一个存储主键数组,和一个空数组.解析文件,然后看要 ...

最新文章

  1. 动态鼠标指针_推荐8款电脑鼠标指针,让你电脑不再千篇一律
  2. C语言学习之用*打印菱形
  3. Spark _25 _读取Hive中的数据加载成DataFrame/DataSet(四)
  4. Apache以及PHP的默认编码问题解决(详解)
  5. 高斯白噪声下基于EM的多径时延估计
  6. ssm框架简单实现文件上传
  7. 31. 脱壳篇-什么是壳
  8. 静态方法、静态内部类和抽象方法的注意问题
  9. iOS 第三方 汇总
  10. Xxx饭堂系统 JAVA+SQL+JDBC完成一个小项目(下篇)
  11. Java8:接口里面可以写实现方法吗【可以】 、接口可以多继承吗【可以】
  12. 一元流量参数为null_了解JavaScript中null和undefined之间的差异和相似之处
  13. 恶搞:python病毒
  14. MICCAI 2022:基于 MLP 的快速医学图像分割网络—UNeXt
  15. 如何解决 Google GMS 在被锁定失效后,无法再使用 Google Play Store的问题;亦适用于在不使用 Google GMS 的情况下,如何正常使用Google Play 商店
  16. Nginx Image 缩略图 模块
  17. 安卓实现天天动听音乐播放歌词悬浮哦(转)
  18. 计算机二级vpf是什么,计算机二级VPF表单试题
  19. 2维空间、3维空间的最大分割数及多维空间的最大分割数猜想
  20. 玄元剑仙服务器列表为空,玄元剑仙门派大全_玄元剑仙门派大全数据图片_攻略...

热门文章

  1. Verilog第五章
  2. android自带的icon矢量图
  3. 书真是太神奇了的超级玛丽
  4. 双非菜鸡3个月收割头条大数据offer,方向真的比努力更重要!
  5. Arduino Uno资料简介
  6. linux大文件分割 split命令
  7. 克隆数据库linux 不能登录,DockerSQL2017Linux容器的数据库克隆
  8. 2014,TEVC,Semantic backpropagation for designing search operators in genetic programming
  9. 【exthmui】【红米9】红米9类原生系统 exthmui 使用体验
  10. Navicat首次连接MySQL8.0出现错误#1045 - Access denied for user ‘root‘@‘localhost‘(using password: YES)的解决办法