在Python中获取显示器大小

5 投票
2 回答
9874 浏览
提问于 2025-04-15 21:45

我正在使用Python,想要创建一个全屏窗口。我知道可以用pygame.FULLSCREEN这个标志,但当我使用它的时候,屏幕周围会出现黑色的区域。有没有办法用Python获取显示器的大小,这样我就可以把窗口调整到正确的大小呢?

2 个回答

0

试试这个:

screensize = pygame.display.list_modes()
window = pygame.display.set_mode((screensize[0][0], screensize[0][1]))
8

根据文档pygame.display.Info可以给你一个VideoInfo对象,这个对象里面有一些属性,其中包括:

current_wcurrent_h:当前视频模式的宽度和高度,或者如果在调用display.set_mode之前调用它,则是桌面模式的宽度和高度。

pygame.display.list_modes会给你一个可用的全屏分辨率列表,比如文档中的一个评论提到:

>>> pygame.display.list_modes()
[(1920, 1080), (1768, 992), (1680, 1050), (1600, 1200), (1600, 1024), (1600, 900
), (1440, 900), (1400, 1050), (1360, 768), (1280, 1024), (1280, 960), (1280, 800
), (1280, 768), (1280, 720), (1152, 864), (1024, 768), (800, 600), (720, 576), (
720, 480), (640, 480)]

这个列表是从最大到最小的。你可以尝试用pygame.display.set_mode设置一些这些分辨率,看看哪个效果最好。

撰写回答