美文网首页
Python - 基于pygame -2

Python - 基于pygame -2

作者: Ego_1973 | 来源:发表于2017-05-22 15:14 被阅读0次
    Demo - 2 事件检索

    使用pygame.event 处理

    pygame.event.get() : 打开门让所有人进入
    pygame.event.wait() : 发生一个事件再继续,类似于你盯着看,来一个放一个(一般游戏不会使用,因为游戏往往是动态运作)
    pygame.event.poll() : 一旦调用,会根据实际情形返回一个真实的事件,或者一个"什么都没有"
    
    pygame.mouse.get_pos() : 得到当前鼠标位置
    

    事件检索 使用事件集 处理
    使用事件获得鼠标位置,处理鼠标事件

    MOUSEMOTION : 事件会在鼠标动作的时候发生,它有三个参数:
           buttons – 一个含有三个数字的元组,三个值分别代表左键、中键和右键,1就是按下了。
           pos – 位置
           rel – 代表了现在距离上次产生鼠标事件时的距离
    
    MOUSEBUTTONDOWN / MOUSEBUTTONUP : # button – 代表了哪个按键被操作
                                    pos – 位置
    

    事件过滤

    pygame.event.set_blocked(事件名) :      eg:pygame.event.set_blocked([KEYDOWN, KEYUP]),如果设置参数None,那么所有的事件都被打开了,
    pygame.event.set_allowed() : 与上面相对的,我们使用来设定允许的事件。
    

    产生事件 eg:

    my_event = pygame.event.Event(KEYDOWN, key=K_SPACE, mod=0, unicode=u' ')
    

    或者:

    my_event = pygame.event.Event(KEYDOWN, {"key":K_SPACE, "mod":0, "unicode":u' '})
    pygame.event.post(my_event)
    

    产生自定义全新事件

     CATONKEYBOARD = USEREVENT + 1
     my_event = pygame.event.Event(CATONKEYBOARD, message="Bad cat!")
    
     pgame.event.post(my_event)
    

    然后获得它

    for event in pygame.event.get():
       if event.type == CATONKEYBOARD:
          print event.message
    
    Pygame-事件检索.png

    相关文章

      网友评论

          本文标题:Python - 基于pygame -2

          本文链接:https://www.haomeiwen.com/subject/kgabxxtx.html