Конечно в создании игровых приложений на библиотеке pygame и даже на любой другой в большинстве случаев не обойтись без обработки событий клавиатуры.К тому же одна игровая библиотека имеет похожую функциональность с другой игровой библиотекой.
При нажатии и также при отпускании какой-либо клавиши возникает событие.Можно сказать,что при возникновении события - появляется сигнал от клавиатуры.
Так вот, "сигнал" может появляться при нажатии клавиши и обозначается константой pygame.KEYDOWN,а отпускание клавиши обозначается константой pygame.KEYUP.
У каждой клавиши тоже имеется константное символическое обозначение.
Когда происходит событие от клавиатуры - клавиатура получает "сигнал",можно получить клавишу ,которую нажал или еще не отпустил пользователь и каким-либо программным образом отреагировать на это действие.Это делается с помощью оператора ветвления языка python.
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Keyboard events")
screen.fill((255,255,255))
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
if event.type == pygame.KEYDOWN: # здесь обрабатывается сигнал от нажатия клавиши
if event.key == pygame.K_ESCAPE: #здесь указывается клавишу и её обработка
screen.fill((255,0,0))
if event.type == pygame.KEYUP:# здесь обрабатывается сигнал от отпускания клавиши
if event.key == pygame.K_ESCAPE:
screen.fill((0,255,0))
pygame.display.update()
Таким образом в данном уроке событие и сигнал является взаимодополняющими и взаимозаменяемыми понятиями.Надеюсь я пролил свет на реагирование на клавиши в pygame.Но это конечно не все функции,имеющиеся в этой библиотеке,что связаны с клавиатурой.
|