Python中pygame的mouse鼠标事件用法实例

 更新时间:2015年11月11日 14:34:20   作者:Hongten  
这篇文章主要介绍了Python中pygame的mouse鼠标事件用法,以完整实例形式详细分析了pygame响应鼠标事件的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了Python中pygame的mouse鼠标事件用法。分享给大家供大家参考,具体如下:

pygame.mouse提供了一些方法获取鼠标设备当前的状态

'''
pygame.mouse.get_pressed - get the state of the mouse buttons  get the state of the mouse buttons
pygame.mouse.get_pos - get the mouse cursor position  get the mouse cursor position
pygame.mouse.get_rel - get the amount of mouse movement  get the amount of mouse movement
pygame.mouse.set_pos - set the mouse cursor position  set the mouse cursor position
pygame.mouse.set_visible - hide or show the mouse cursor  hide or show the mouse cursor
pygame.mouse.get_focused - check if the display is receiving mouse input  check if the display is receiving mouse input
pygame.mouse.set_cursor - set the image for the system mouse cursor  set the image for the system mouse cursor
pygame.mouse.get_cursor - get the image for the system mouse cursor  get the image for the system mouse cursor
'''

在下面的demo中,主要用到了:

pygame.mouse.get_pressed()

pygame.mouse.get_pos()

展示的效果:

游戏效果:

当鼠标经过窗口的时候,窗口背景颜色会随着鼠标的移动而发生改变,当鼠标点击窗口

会在控制台打印出是鼠标的那个键被点击了:左,右,滚轮

#pygame mouse
import os, pygame
from pygame.locals import *
from sys import exit
from random import *
__author__ = {'name' : 'Hongten',
       'mail' : 'hongtenzone@foxmail.com',
       'Version' : '1.0'}
if not pygame.font:print('Warning, Can not found font!')
pygame.init()
screen = pygame.display.set_mode((255, 255), 0, 32)
screen.fill((255,255,255))
font = pygame.font.Font('data\\font\\TORK____.ttf', 20)
text = font.render('Cliked Me please!!!', True, (34, 252, 43))
mouse_x, mouse_y = 0, 0
while 1:
  for event in pygame.event.get():
    if event.type == QUIT:
      exit()
    elif event.type == MOUSEBUTTONDOWN:
      pressed_array = pygame.mouse.get_pressed()
      for index in range(len(pressed_array)):
        if pressed_array[index]:
          if index == 0:
            print('Pressed LEFT Button!')
          elif index == 1:
            print('The mouse wheel Pressed!')
          elif index == 2:
            print('Pressed RIGHT Button!')
    elif event.type == MOUSEMOTION:
      #return the X and Y position of the mouse cursor
      pos = pygame.mouse.get_pos()
      mouse_x = pos[0]
      mouse_y = pos[1]
  screen.fill((mouse_x, mouse_y, 0))    
  screen.blit(text, (40, 100))
  pygame.display.update()

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • Python字符串内置函数功能与用法总结

    Python字符串内置函数功能与用法总结

    这篇文章主要介绍了Python字符串内置函数功能与用法,结合实例形式总结分析了Python常见字符串操作函数的功能、分类、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-04-04
  • 使用Python字典实现词频统计的方法

    使用Python字典实现词频统计的方法

    在Python中,利用字典进行词频统计是一种常见且强大的方式,通过对文本进行预处理并使用字典数据结构,可以轻松地统计文本中每个单词出现的频率,下面将详细解释这个过程,并提供多种例子,以帮助你更好地理解并应用这一技术,需要的朋友可以参考下
    2023-12-12
  • Python爬虫之超级鹰验证码应用

    Python爬虫之超级鹰验证码应用

    众所周知python是一个很强大的语言,它拥有众多的库,今天我尝试了使用超级鹰第三方平台进行验证码的开发,需要的朋友可以参考下
    2022-08-08
  • python中的import、from import及import as的区别解析

    python中的import、from import及import as的区别解析

    在Python中,如果import的语句比较长,导致后续引用不方便,可以使用as语法,这篇文章主要介绍了python中的import、from import以及import as的区别,需要的朋友可以参考下
    2022-10-10
  • python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图

    python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图

    这篇文章主要介绍了python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • 快速进修Python指南之异常捕获

    快速进修Python指南之异常捕获

    这篇文章主要为大家介绍了Java开发者快速进修Python指南之异常捕获, 有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Pytorch中关于F.normalize计算理解

    Pytorch中关于F.normalize计算理解

    这篇文章主要介绍了Pytorch中关于F.normalize计算理解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Python可视化程序调用流程解析

    Python可视化程序调用流程解析

    这篇文章主要为大家介绍了可视化Python程序调用流程解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • 深入了解Python Opencv数据增强

    深入了解Python Opencv数据增强

    常见的数据增强操作有:按比例放大或缩小图片、旋转、平移、水平翻转、改变图像通道等。本文将通过Python OpenCV实现这些操作,需要的可以参考一下
    2022-02-02
  • Django获取该数据的上一条和下一条方法

    Django获取该数据的上一条和下一条方法

    今天小编就为大家分享一篇Django获取该数据的上一条和下一条方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08

最新评论