• 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()

    展示的效果:

    hongten_pygame

    游戏效果:

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

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

    ========================================

    代码部分:

    ========================================

    复制代码
     1 #pygame mouse
     2 
     3 import os, pygame
     4 from pygame.locals import *
     5 from sys import exit
     6 from random import *
     7 
     8 __author__ = {'name' : 'Hongten',
     9               'mail' : 'hongtenzone@foxmail.com',
    10               'blog' : 'http://www.cnblogs.com/hongten',
    11               'Version' : '1.0'}
    12 
    13 if not pygame.font:print('Warning, Can not found font!')
    14 
    15 pygame.init()
    16 
    17 screen = pygame.display.set_mode((255, 255), 0, 32)
    18 screen.fill((255,255,255))
    19 
    20 font = pygame.font.Font('data\font\TORK____.ttf', 20)
    21 text = font.render('Cliked Me please!!!', True, (34, 252, 43))
    22 
    23 mouse_x, mouse_y = 0, 0
    24 while 1:
    25     for event in pygame.event.get():
    26         if event.type == QUIT:
    27             exit()
    28         elif event.type ==  MOUSEBUTTONDOWN:
    29             pressed_array = pygame.mouse.get_pressed()
    30             for index in range(len(pressed_array)):
    31                 if pressed_array[index]:
    32                     if index == 0:
    33                         print('Pressed LEFT Button!')
    34                     elif index == 1:
    35                         print('The mouse wheel Pressed!')
    36                     elif index == 2:
    37                         print('Pressed RIGHT Button!')
    38         elif event.type == MOUSEMOTION:
    39             #return the X and Y position of the mouse cursor
    40             pos = pygame.mouse.get_pos()
    41             mouse_x = pos[0]
    42             mouse_y = pos[1]
    43       
    44     screen.fill((mouse_x, mouse_y, 0))       
    45     screen.blit(text, (40, 100))
    46     pygame.display.update()
    复制代码
  • 相关阅读:
    STL容器内数据删除
    grep 同时满足多个关键字和满足任意关键字
    程序运行栈空间不足程序崩溃问题
    VS2010中设置程序以管理员身份运行
    python 包详解
    select 详解
    Hdu 1166
    CF1204C
    CF1204B
    CF1204A
  • 原文地址:https://www.cnblogs.com/liuzhi/p/3975820.html
Copyright © 2020-2023  润新知