python - python中pygame.event.get()中的for事件是如何工作的?
问题描述
我的问题是,在这个循环的执行过程中,可能会发生数百个事件,并且对于每个事件,它都会产生一个 Event 对象......那么,循环如何能够完成并且解释器如何退出循环?
解决方案
事件排队。当一个新事件发生时,它被添加到队列的末尾。当pygame.event.get
被调用时,返回当前队列中的事件并清空队列。见pygame.event.get
:
这将获取所有消息并将它们从队列中删除。
执行事件循环时发生的新事件将添加到队列中。pygame.event.get
您将在下一帧中调用下一次获得这些事件。
推荐阅读
- typescript - Jest 将 setup/teardown 代码封装到一个函数中
- angular - 需要根据内容动态设置标题
- visual-studio - 什么取代了 Visual Studio 2019 中的代码分析?
- ios - 在自定义 UITableViewCell 中设置 UILabel 文本时出错
- python - 如果相关项目的 COUNT 个,您如何编写 Django 查询条件?
- ios - Swift - 仅对特定约束进行动画处理
- sql - 员工维度在数据仓库中每天被截断
- twilio - 将 Twilio MMS 媒体文件复制到我的服务器
- raku - 多行定义或“//”
- php - 如何通过多态关系将关系写入到远程模型