zoukankan      html  css  js  c++  java
  • pygame_鼠标事件

    pygame_鼠标事件

    鼠标移动事件:MOUSEMOTION
    event.pos: 鼠标当前坐标值(x,y),相对于窗口左上角
    event.rel: 鼠标相对运动距离(x,y),相对于上一次事件
    event.buttons:鼠标按钮状态(a,b,c),对应于鼠标的三个键,鼠标移动时,这三个键处于按下状态,对应的位置值为1,反之则为0

    鼠标键释放事件:MOUSEBUTTONUP
    event.pos:鼠标当前坐标值(x,y),相对于窗口左上角
    event.button:鼠标按下键编号n,取值1/2/3分别对应三个键,鼠标左键,中键与右键。

    鼠标键按下事件:MOUSEBUTTONDOWN
    event.pos:鼠标当前坐标值(x,y),相对于窗口左上角
    event.button:鼠标按下键编号n,取值1/2/3分别对应三个键,鼠标左键,中键与右键。

    测试代码

    import sys
    
    import pygame
    from pygame.locals import *
    
    # 初始化
    pygame.init()
    # 创建一个窗口
    pygame.display.set_mode((600, 500))
    
    # 观察鼠标事件
    while True:
        for event in pygame.event.get():
            if event.type == MOUSEMOTION:
                mouse_x, mouse_y = event.pos  # 当前坐标
                move_x, move_y = event.rel    # 相对移动距离
                print('MOUSEMOTION 鼠标移动事件', event.pos, event.rel, event.buttons)
            elif event.type == MOUSEBUTTONDOWN:
                print('MOUSEBUTTONDOWN 鼠标按下事件', event.pos, event.button)
            elif event.type == MOUSEBUTTONUP:
                print('MOUSEBUTTONUP 鼠标释放事件', event.pos, event.button)
            elif event.type == QUIT:
                sys.exit()
        # 刷新
        pygame.display.update()
    
  • 相关阅读:
    sgu101Domino
    KM模版
    UVA11383 Golden Tiger Claw(KM算法)
    POJ3565Ants(KM算法)
    POJ3041Asteroids(二分图最小点覆盖)
    UVA1175 Ladies' Choice(稳定婚姻问题,二分图)
    POJ1273Drainage Ditches(裸的最大流)
    UVA1201 Taxi Cab Scheme(POJ2060)DAG的最小路径覆盖
    二分图最大匹配数模版
    11419 SAM I AM(二分图)
  • 原文地址:https://www.cnblogs.com/duxiangjie/p/15693347.html
Copyright © 2011-2022 走看看