Pygame 鼠标事件
Pygame识别三个鼠标事件,即MOUSEMOTION、MOUSEBUTTONUP和MOUSEBUTTONDOWN。相应的事件对象返回鼠标被按下/释放时的位置坐标和按钮的编号。
例如,一个MOUSEBUTTONDOWN事件对象将显示以下结果
例子
为了获得按下按钮的位置坐标,我们可以使用与事件对象相关的get_pos()函数。
输出
运行上述代码,在游戏窗口的随机位置按下鼠标按钮。
MOUSEMOTION事件对象捕捉移动鼠标位置的瞬时位置。
pygame.mouse模块的其他重要函数和属性如下
pygame.key.get_pressed | 获取鼠标按键的状态 |
---|---|
pygame.mouse.get_pos | 获取鼠标光标的位置 |
pygame.mouse.get_rel | 获取鼠标的移动量 |
pygame.mouse.set_pos | 设置鼠标光标的位置 |
pygame.mouse.set_visible | 隐藏或显示鼠标光标 |
pygame.mouse.get_visible | 获取鼠标光标的当前可见状态。 |
pygame.mouse.get_focused | 检查显示器是否正在接收鼠标输入 |
pygame.mouse.set_cursor | 设置鼠标光标的图像 |
pygame.mouse.set_system_cursor | 将鼠标光标设置为一个系统变体 |
Pygame定义了以下系统光标:
pygame.SYSTEM_CURSOR_ARROW | 箭头 |
---|---|
pygame.SYSTEM_CURSOR_IBEAM | i-beam |
pygame.SYSTEM_CURSOR_WAIT | wait |
pygame.SYSTEM_CURSOR_CROSSHAIR | 十字线 |
pygame.SYSTEM_CURSOR_SIZENWSE | 指向西北和东南的双箭头 |
pygame.SYSTEM_CURSOR_SIZENESW | 指向东北方和西南方的双箭头 |
pygame.SYSTEM_CURSOR_SIZEWE | 指向西方和东方的双箭头 |
pygame.SYSTEM_CURSOR_SIZENS | 指向南北的双箭头 |
pygame.SYSTEM_CURSOR_SIZEALL | 四个箭头 |
pygame.SYSTEM_CURSOR_NO | 划线的圆圈或十字骨 |
pygame.SYSTEM_CURSOR_HAND | 手 |
下面的语句将设置游戏窗口的光标为十字线。