我在Pygame中从全屏模式切换到较小的屏幕时遇到了一个问题。窗口出现在左上角,我看不到任何退出按钮,也无法将其拖动到中心。下面是我使用的代码:
import pygame
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((0, 0), pygame.FULLSCREEN)
run = True
while run:
for event in pygame.event.get():
if event == pygame.QUIT:
run = False
if event.type == pygame.KEYDOWN:
# Exit fullscreen with escape key
if event.key == pygame.K_ESCAPE:
if screen.get_flags() & FULLSCREEN:
pygame.display.set_mode((400, 400))
else:
pygame.display.set_mode((0, 0), FULLSCREEN)
我尝试在屏幕上居中放置较小的窗口,通常可以正常工作,但在这种情况下不是这样。
import os
# .........
if screen.get_flags() & FULLSCREEN:
os.environ['SDL_VIDEO_CENTERED'] = '1'
pygame.display.set_mode((400, 400))
else:
pygame.display.set_mode((0, 0), FULLSCREEN)
你知道如何在退出全屏后使窗口居中吗?
发布于 2021-02-06 09:22:14
这是pygame中的一个bug。
如果您需要此行为,在github上报告此问题的人找到了解决方法(https://github.com/pygame/pygame/issues/2360)
希望它能在2.0.2中修复,我已经写了一个补丁来修复它(https://github.com/pygame/pygame/pull/2460)
https://stackoverflow.com/questions/66058567
复制相似问题