AttributeError: у объекта 'Event' нет атрибута 'mouse_pos' - PullRequest
0 голосов
/ 04 апреля 2019

Я просто хочу сохранить положение мыши в любой момент.Почему этот простой код не работает?

import pygame

screen = pygame.display.set_mode((500,500))
screen.fill((255,255,255))

while True:
    ev = pygame.event.get()
    for event in ev:
        pos = pygame.mouse.get_pos()
        if event.type != pygame.NOEVENT:
            mouse_pos = pygame.mouse.get_pos()      
            x, y = event.mouse_pos
            print(x, y)

1 Ответ

0 голосов
/ 04 апреля 2019

Положение мыши можно отслеживать вне цикла обработки событий.

import pygame
import sys

screen = pygame.display.set_mode((500,500))
screen.fill((255,255,255))

last_pos = (-1,-1)

while True:
    # handle user events
    ev = pygame.event.get()
    for event in ev:
        if event.type == pygame.QUIT:
            sys.exit()

    # track the mouse co-ords
    mouse_pos = pygame.mouse.get_pos()
    if ( mouse_pos != last_pos ):
        x,y = mouse_pos
        print(x, y)
        last_pos = mouse_pos
...