В pygame cуществуют следующие события мыши:
1.pygame.MOUSEBUTTONDOWN - отслеживание нажатия
2.MOUSEBUTTONUP - отслеживание отпускания
3.MOUSEMOTION - отслеживание перемещения
У клавиатуры имеются клавиши и события,генерируемые ими,у компьютерной мыши существуют несколько кнопок и есть возможность получить её координаты относительно графического окна игрового приложения.Мышь позволяет пользователю взаимодействовать с игровой программой образом кардинально отличным от клавиатуры.Кроме мыши и клавиатуры для компьютера изобретено еще одно устройство ввода - это джойстик,который также поддерживается библиотекой pygame.
Конечно для содания взаимодействия с пользователем в традиционных игровых приложениях достаточно мыши и клавиатуры.
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Mouse events")
myfont = pygame.font.SysFont(None, 25)
screen.fill((255,255,255))
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
if event.type == pygame.MOUSEMOTION:
screen.fill((255,255,255))
x = event.pos[0]
y = event.pos[1]
mytext1 = myfont.render('Координата X '+str(x), True,(180, 0, 0))
mytext2 = myfont.render('Координата Y '+str(y), True,(180, 0, 0))
screen.blit(mytext1, (10, 50))
screen.blit(mytext2, (10, 100))
pygame.display.update()
Замысел программы данного урока прост.Она выводит координаты компьютерной мыши на экран.
В языке python для преобразования числовой переменной в текстовую используется функция str.
Если инструкцию mytext1 = myfont.render('Координата X '+str(x), True,(180, 0, 0)) записать как mytext1 = myfont.render('Координата X '+x, True,(180, 0, 0)),то возникнет программная ошибка,связанная с тем,что язык python видит несоответствие типов.
|