pygame.display.Info()
除了表面pygame.display.set_mode()
返回之外,还有其他方法可以获取窗口的尺寸吗?
我正在开发一款带有可调整大小窗口的软件。虽然为大多数窗口管理器设置默认尺寸是可以的,但平铺的(例如 Awesome、Xmonad 等)会积极地将窗口调整为他们选择的动态尺寸。在 SDL 创建初始窗口后,这种重新调整发生得如此之快,它不会生成pygame.VIDEORESIZE
具有新(正确)尺寸的事件。
现在,如果在开始时我生成一个新大小为 0 的虚假 videoresize 事件,一切都会很好:
P.event.post(P.event.Event(P.VIDEORESIZE, size=(0,0), w=0, h=0))
至少 Xmonad 会看到这一点并以合适的大小再次调整大小。我有一种预感,它不会像传统的窗口管理器那样漂亮。窗口可能会覆盖所有屏幕区域。
有没有更好的方法来确定帧大小?