這篇文章主要介紹了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程序設計有所幫助。
新聞熱點
疑難解答