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


Posted in Python onNovember 11, 2015

本文实例讲述了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()

展示的效果:

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

游戏效果:

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

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

#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如何调用C/C++底层库与互相传值
Aug 10 Python
详解python上传文件和字符到PHP服务器
Nov 24 Python
python增加矩阵维度的实例讲解
Apr 04 Python
Django后台获取前端post上传的文件方法
May 28 Python
Python线程下使用锁的技巧分享
Sep 13 Python
浅谈Python采集网页时正则表达式匹配换行符的问题
Dec 20 Python
Python绘图Matplotlib之坐标轴及刻度总结
Jun 28 Python
python 中如何获取列表的索引
Jul 02 Python
python分布式计算dispy的使用详解
Dec 22 Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
Jun 03 Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
Jun 11 Python
Python各协议下socket黏包问题原理
Apr 12 Python
Python基于pygame实现的font游戏字体(附源码)
Nov 11 #Python
python中pygame针对游戏窗口的显示方法实例分析(附源码)
Nov 11 #Python
python基于pygame实现响应游戏中事件的方法(附源码)
Nov 11 #Python
Python基于pygame实现的弹力球效果(附源码)
Nov 11 #Python
Python中pygame安装方法图文详解
Nov 11 #Python
Python基于pygame实现图片代替鼠标移动效果
Nov 11 #Python
python开发之thread线程基础实例入门
Nov 11 #Python
You might like
第十三节 对象串行化 [13]
2006/10/09 PHP
php 删除cookie方法详解
2014/12/01 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
基于jquery库的tab新形式使用
2012/11/16 Javascript
变量声明时命名与变量作为对象属性时命名的区别解析
2013/12/06 Javascript
原生js结合html5制作小飞龙的简易跳球
2015/03/30 Javascript
jQuery代码实现发展历程时间轴特效
2015/07/30 Javascript
javascript中的altKey 和 Event属性大全
2015/11/06 Javascript
jQuery+css实现的切换图片功能代码
2016/01/27 Javascript
Angularjs 滚动加载更多数据
2016/03/17 Javascript
Vue.js devtool插件安装后无法使用的解决办法
2017/11/27 Javascript
js实现图片放大并跟随鼠标移动特效
2019/01/18 Javascript
Handtrack.js库实现实时监测手部运动(推荐)
2021/02/08 Javascript
[01:23]2019完美世界全国高校联赛(春季赛)合肥全国总决赛
2019/06/10 DOTA
Python getopt模块处理命令行选项实例
2014/05/13 Python
python 拷贝特定后缀名文件,并保留原始目录结构的实例
2018/04/27 Python
Python实现判断一行代码是否为注释的方法
2018/05/23 Python
python中bs4.BeautifulSoup的基本用法
2019/07/27 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
2019/08/12 Python
python目标检测给图画框,bbox画到图上并保存案例
2020/03/10 Python
python实现AHP算法的方法实例(层次分析法)
2020/09/09 Python
YOOX美国官方网站:全球著名的多品牌时尚网络概念店
2016/09/11 全球购物
Expedia挪威官网:酒店、机票和租车
2018/03/03 全球购物
澳大利亚最超值的自行车之家:Reid Cycles
2019/03/24 全球购物
校园餐饮创业计划书
2014/01/10 职场文书
运动会解说词100字
2014/01/31 职场文书
教师师德反思材料
2014/02/15 职场文书
开门红主持词
2014/04/02 职场文书
公司委托书格式范本
2014/09/16 职场文书
公安局副政委班子个人对照检查材料
2014/10/04 职场文书
学院党委班子四风问题自查报告及整改措施
2014/10/25 职场文书
植物园观后感
2015/06/11 职场文书
幼儿园教师管理制度
2015/08/05 职场文书
强烈推荐:小学生:暑假作息时间表(值得收藏)
2019/07/09 职场文书
python爬取新闻门户网站的示例
2021/04/25 Python