首页 > 编程 > Python > 正文

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

2020-01-04 17:56:42
字体:
来源:转载
供稿:网友

这篇文章主要介绍了Python中pygame的mouse鼠标事件用法,以完整实例形式详细分析了pygame响应鼠标事件的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

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

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

 

 
  1. ''
  2. pygame.mouse.get_pressed - get the state of the mouse buttons get the state of the mouse buttons 
  3. pygame.mouse.get_pos - get the mouse cursor position get the mouse cursor position 
  4. pygame.mouse.get_rel - get the amount of mouse movement get the amount of mouse movement 
  5. pygame.mouse.set_pos - set the mouse cursor position set the mouse cursor position 
  6. pygame.mouse.set_visible - hide or show the mouse cursor hide or show the mouse cursor 
  7. pygame.mouse.get_focused - check if the display is receiving mouse input check if the display is receiving mouse input 
  8. pygame.mouse.set_cursor - set the image for the system mouse cursor set the image for the system mouse cursor 
  9. pygame.mouse.get_cursor - get the image for the system mouse cursor get the image for the system mouse cursor 
  10. ''

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

pygame.mouse.get_pressed()

pygame.mouse.get_pos()

展示的效果:

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

游戏效果:

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

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

 

 
  1. #pygame mouse 
  2. import os, pygame 
  3. from pygame.locals import * 
  4. from sys import exit 
  5. from random import * 
  6. __author__ = {'name' : 'Hongten'
  7. 'mail' : 'hongtenzone@foxmail.com'
  8. 'Version' : '1.0'
  9. if not pygame.font:print('Warning, Can not found font!'
  10. pygame.init() 
  11. screen = pygame.display.set_mode((255, 255), 0, 32) 
  12. screen.fill((255,255,255)) 
  13. font = pygame.font.Font('data//font//TORK____.ttf', 20) 
  14. text = font.render('Cliked Me please!!!', True, (34, 252, 43)) 
  15. mouse_x, mouse_y = 0, 0 
  16. while 1: 
  17. for event in pygame.event.get(): 
  18. if event.type == QUIT: 
  19. exit() 
  20. elif event.type == MOUSEBUTTONDOWN: 
  21. pressed_array = pygame.mouse.get_pressed() 
  22. for index in range(len(pressed_array)): 
  23. if pressed_array[index]: 
  24. if index == 0: 
  25. print('Pressed LEFT Button!'
  26. elif index == 1: 
  27. print('The mouse wheel Pressed!'
  28. elif index == 2: 
  29. print('Pressed RIGHT Button!'
  30. elif event.type == MOUSEMOTION: 
  31. #return the X and Y position of the mouse cursor 
  32. pos = pygame.mouse.get_pos() 
  33. mouse_x = pos[0] 
  34. mouse_y = pos[1] 
  35. screen.fill((mouse_x, mouse_y, 0))  
  36. screen.blit(text, (40, 100)) 
  37. pygame.display.update() 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表