我想改变游戏窗口相对于电脑屏幕的位置。但是在文档中找不到任何东西。请帮我。
答案 0 :(得分:0)
您可以使用可以使用os.environ访问的环境变量来设置pygame显示初始化的位置。来自http://www.pygame.org/wiki/SettingWindowPosition?parent=CookBook的示例:
x = 100
y = 0
import os
os.environ['SDL_VIDEO_WINDOW_POS'] = "%d,%d" % (x,y)
import pygame
pygame.init()
screen = pygame.display.set_mode((100,100))
# wait for a while to show the window.
import time
time.sleep(2)
我认为不可能更改已初始化的显示的位置,但您可以退出当前显示,设置环境变量并重新初始化。
答案 1 :(得分:0)
可以使用其句柄(hwnd)更改初始化窗口的位置。在User32.dll
中有一个名为MoveWindow的函数,它接收窗口的句柄并更改其位置。您可以使用python的标准ctypes
模块调用它。
from ctypes import windll
def moveWin(x, y):
# the handle to the window
hwnd = pygame.display.get_wm_info()['window']
# user32.MoveWindow also recieves a new size for the window
w, h = pygame.display.get_surface().get_size()
windll.user32.MoveWindow(hwnd, x, y, w, h, False)