pygame mouse.get_pos () не работает

Я не могу получить очень простой скрипт pygame для работы:

import pygame class MainWindow(object): def __init__(self): pygame.init() pygame.display.set_caption('Game') pygame.mouse.set_visible(True) # pygame.mouse.set_visible(False) # this doesn't work either! screen = pygame.display.set_mode((640,480), 0, 32) pygame.mixer.init() while True: print pygame.mouse.get_pos() pygame.mixer.quit() pygame.quit() MainWindow() 

Это просто выводит (0,0), когда я перемещаю мышь вокруг окна:

 (0, 0) (0, 0) (0, 0) (0, 0) (0, 0) 

Кто-нибудь может это проверить?

Изменить – фиксированный код:

 import pygame class MainWindow(object): def __init__(self): pygame.init() pygame.display.set_caption('Game') pygame.mouse.set_visible(True) # pygame.mouse.set_visible(False) # this doesn't work either! screen = pygame.display.set_mode((640,480), 0, 32) pygame.mixer.init() while True: for event in pygame.event.get(): if event.type == pygame.MOUSEMOTION: print pygame.mouse.get_pos() pygame.mixer.quit() pygame.quit() MainWindow() 

2 Solutions collect form web for “pygame mouse.get_pos () не работает”

Pygame будет постоянно отправлять события во время работы. Их нужно каким-то образом обработать, или pygame будет висеть и ничего не делать. Самый простой способ исправить это, добавив это в свой основной цикл:

 ... while True: for event in pygame.event.get(): pass print pygame.mouse.get_pos() ... 

Я никогда не использовал это раньше, но я обнаружил, что

Pygame: обнаружение мыши

Вам нужно подождать, пока произойдет событие. Я предполагаю, что это опустошает стек и позволяет вам получить данные позже.

 for event in pygame.event.get() 
  • Базовая сеть с Pygame
  • Чтение изображения .JPG и сохранение его без изменения размера файла
  • PyGame не принимает события, когда одновременно нажаты клавиши 3+
  • Как установить PyGame на Python 3.4?
  • Не могу найти модуль Pygame
  • Как подождать некоторое время в pygame?
  • Невозможно получить pygame.Surface.get_at () для правильной работы
  • Вход в pygame для Mac OS X отправляется в Terminal вместо Python
  • Код только производит черный экран в окне Pygame
  • Обновление части поверхности в python или прозрачных поверхностях
  • Как установить ограничения на изменение размера окна в pygame
  • Python - лучший язык программирования в мире.