我想问一下pygame中自定义事件的用法。。
我用pygame做了一些实验,所以我知道pygame生成的事件通常是如何工作的。。
我的问题是,为什么有人对用户事件感兴趣,它是否有助于简化
组合pygame事件?在现实世界的例子中,如何实现它,如何从中获益?
# creating the event
CATONkeyboard = USEREVENT+1
my_event = pygame.event.Event(CATONKEYBOARD, message="Bad cat!")
pygame.event.post(my_event)
# handling it
for event in pygame.event.get():
if event.type == CATONKEYBOARD:
print event.message
我试过了,我发现这个事件只产生一次(一旦发布)
有人能给我解释一下吗?
谢谢。。
您可以使用
pygame.event.post
手动发布自定义事件,如示例所示。此外,还可以使用
pygame.time.set_timer
在特定时间间隔发布自定义事件。下面是我为another question编写的一个小示例,其中自定义事件用于移动对象和控制重新加载超时:实现这样的功能非常容易。只需创建一个条件和事件列表并检查主循环中的每个条件:
下面是完整的示例:
事件仅在使用
pgame.event.post(my_event)
时发送 如果你只发一次,那么你只收到一次。
类
Player
可以发布事件I'm dead
,mainloop将结束游戏。您可以将事件与“==”进行比较。所比较的事件必须完全相同,它们的态度必须相等
投掷项目
主回路
相关问题 更多 >
编程相关推荐