Как сохранить экран Pygame на переднем плане? - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть python программа. Я использую pygame для создания окна и захвата событий клавиатуры. Но когда я использую другие приложения, мой pygame window уходит в фоновый режим, и если я не возвращаюсь на передний план, он не захватывает мои клавиатурные вводы.

while True:
    for event in pygame.event.get():
        if event.type == pygame.KEYDOWN: 
            if event.key == pygame.K_w:
                pygame.quit()
            if event.key == pygame.K_p:
                print("Take screenshot..")
        if event.type == pygame.locals.QUIT:
             pygame.quit()
             sys.exit()

Как я могу решить это?

1 Ответ

0 голосов
/ 30 апреля 2020

Вы не можете сделать это легко в Pygame 1.x. AFAIK pygame 2.x будет поддерживать это, так как SDL 2 ввел флаг SDL_WINDOW_ALWAYS_ON_TOP.

Если вы используете windows Я думаю, вы могли бы использовать win32-API, чтобы получить дескриптор вашего окна и вызова SetWindowPos с флагом HWND_TOPMOST.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...