8. PyGame: juhtimine hiirega
Hiire liikumist kontrollib MOUSEMOTION, hiire koordinaadid saame (x, y) paarina kätte sündmuse atribuudist pos. Järgmises näites liigub pildifail hiirega kaasa.
import pygame, sys pygame.init() ekraan = pygame.display.set_mode([800, 600]) ekraan.fill([255, 255, 255]) pilt = pygame.image.load("pildifail.png") x = y = 0 # algsed koordinaadid ekraan.blit(pilt, (x, y)) # Joonistame pildi koordinaatidega (x, y) running = True while running: ekraan.fill([255, 255, 255]) ekraan.blit(pilt, (x,y)) pygame.display.flip() for i in pygame.event.get(): if i.type == pygame.QUIT: running = False # Kui sündmuseks on hiire liikumine,... elif i.type == pygame.MOUSEMOTION: # ... siis muudame pildi koordinaate sisaldavaid muutujaid x ja y x, y = i.pos pygame.quit()
Vasakpoolsele hiirenupule vajutamist registreerib MOUSEBUTTONDOWN, nupu lahtilaskmist MOUSEBUTTONUP. Järgmises näites paigutatakse pilt hiireklõpsu peale hiirenoole kohale.
import pygame, sys pygame.init() ekraan = pygame.display.set_mode([800, 600]) ekraan.fill([255, 255, 255]) pilt = pygame.image.load("pildifail.png") x = y = 0 # algsed koordinaadid ekraan.blit(pilt, (x, y)) # Joonistame pildi koordinaatidega (x, y) running = True while running: ekraan.fill([255, 255, 255]) ekraan.blit(pilt, (x,y)) pygame.display.flip() for i in pygame.event.get(): if i.type == pygame.QUIT: running = False # Kui sündmuseks on hiireklõps,... elif i.type == pygame.MOUSEBUTTONDOWN: # ... siis muudame pildi koordinaate sisaldavaid muutujaid x ja y x, y = i.pos pygame.quit()
Lisamaterjalid
- Sündmuste loetelu: http://www.pygame.org/docs/ref/event.html
- Hiirega seotud sündmused: http://www.pygame.org/docs/ref/mouse.html
Creative Commons litsentsiga Autorile viitamine + Mitteäriline eesmärk 3.0 Eesti (CC BY-NC 3.0 EE) - https://creativecommons.org/licenses/by-nc/3.0/ee/