Python中pygame的mouse鼠標(biāo)事件用法實(shí)例
本文實(shí)例講述了Python中pygame的mouse鼠標(biāo)事件用法。分享給大家供大家參考,具體如下:
pygame.mouse提供了一些方法獲取鼠標(biāo)設(shè)備當(dāng)前的狀態(tài)
''' 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()
展示的效果:

游戲效果:
當(dāng)鼠標(biāo)經(jīng)過窗口的時(shí)候,窗口背景顏色會(huì)隨著鼠標(biāo)的移動(dòng)而發(fā)生改變,當(dāng)鼠標(biāo)點(diǎn)擊窗口
會(huì)在控制臺(tái)打印出是鼠標(biāo)的那個(gè)鍵被點(diǎn)擊了:左,右,滾輪
#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()
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Pycharm遠(yuǎn)程調(diào)試原理及具體配置詳解
這篇文章主要介紹了Pycharm遠(yuǎn)程調(diào)試原理及具體配置詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
python學(xué)習(xí)之SpaCy庫的高級(jí)特性詳解
在之前的文章中,我們介紹了SpaCy庫的一些基本概念和功能,在這篇文章中,我們將深入學(xué)習(xí)一些更高級(jí)的特性,包括詞向量、依賴性解析、和自定義組件2023-07-07
Python2與python3中 for 循環(huán)語句基礎(chǔ)與實(shí)例分析
Python for循環(huán)可以遍歷任何序列的項(xiàng)目,如一個(gè)列表或者一個(gè)字符串,也是python中比較常用的一個(gè)函數(shù),這里通過基礎(chǔ)與實(shí)例給大家分享一下2017-11-11
python使用reportlab實(shí)現(xiàn)圖片轉(zhuǎn)換成pdf的方法
這篇文章主要介紹了python使用reportlab實(shí)現(xiàn)圖片轉(zhuǎn)換成pdf的方法,涉及Python使用reportlab模塊操作圖片轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下2015-05-05
Python實(shí)現(xiàn)統(tǒng)計(jì)代碼行的方法分析
這篇文章主要介紹了Python實(shí)現(xiàn)統(tǒng)計(jì)代碼行的方法,結(jié)合實(shí)例形式分析了Python針對(duì)代碼行數(shù)的計(jì)算實(shí)現(xiàn)步驟與操作技巧,需要的朋友可以參考下2017-07-07
python用match()函數(shù)爬數(shù)據(jù)方法詳解
在本篇文章里小編給大家整理了關(guān)于python用match()函數(shù)爬數(shù)據(jù)方法以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-07-07
python pytest進(jìn)階之conftest.py詳解
這篇文章主要介紹了python pytest進(jìn)階之conftest.py詳解,如果我們?cè)诰帉憸y試用的時(shí)候,每一個(gè)測試文件里面的用例都需要先登錄后才能完成后面的操作,那么們?cè)撊绾螌?shí)現(xiàn)呢?這就需要我們掌握conftest.py文件的使用了,需要的朋友可以參考下2019-06-06

