如何指定pygame创建游戏窗口的位置

11 投票
2 回答
14561 浏览
提问于 2025-04-16 16:34

有没有办法控制pygame创建游戏画面的地方?我发现它总是在差不多的区域创建画面,但位置并不固定。

2 个回答

24
import os  

os.environ['SDL_VIDEO_WINDOW_POS'] = str(position[0]) + "," + str(position[1])

根据 http://pygame.org/wiki/FrequentlyAskedQuestions 的内容

你也可以直接用下面的方法来让屏幕居中:

import pygame, os 

os.environ['SDL_VIDEO_CENTERED'] = '1'

注意,这些设置应该在你开始主循环之前就做好。我通常是在导入os之后立刻进行设置。而且因为这些设置其实不是pygame的一部分,所以你可能在其他地方也能用到,尽管像gtk和wxpython这样的库有自己的方法来处理这些事情。

8

窗口的位置不是由客户端应用程序来处理的,而是由窗口管理器来管理,比如metacity等。

PyGame所基于的SDL库确实有一些环境变量,可以用来给窗口管理器提供一些提示。这些提示窗口管理器可能会忽略,但这也是你能做的最好的选择。

这里的评论中有一个例子。

撰写回答