首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >How to Fullscreen pygame

How to Fullscreen pygame
EN

Stack Overflow用户
提问于 2020-01-13 04:49:03
回答 2查看 2.9K关注 0票数 1

我有一个游戏需要设置为全屏。在初始化屏幕时,我使用的是标准pygame.FULLSCREEN。它曾经可以工作,但是当我更新到pygam2.00时,它似乎不再工作了。我正在使用下面的代码,在我获得任何信息或完成屏幕设置之前,它会产生错误代码:

代码语言:javascript
复制
pygame.error: Window surface is invalid, please call SDL_GetWindowSurface() to get a new surface

我正在运行的代码是:

代码语言:javascript
复制
import pygame

pygame.init()

controller = pygame.joystick.Joystick(0)
controller.init()

width = 600
height = 600 

screen = pygame.display.set_mode((width, height), pygame.FULLSCREEN)
pygame.display.init()


pygame.display.flip()
screen.fill((77,214,255))

running = True
while running:
    for event in pygame.event.get():

        if event.type == pygame.QUIT:
            pygame.quit()
            running = False

        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_ESCAPE:
                pygame.quit()
                running = False

如果有人知道这个问题的解决方案,我将不胜感激!

EN

回答 2

Stack Overflow用户

发布于 2020-01-13 05:53:56

在pygam2.0.0.dev6上进行测试,代码本身运行良好,没有任何问题。但是,正如其他人所提到的,如果您希望游戏仅以全屏方式打开,最好将宽度和高度设置为0。除非使用pygame.SCALED,否则设置不同的测量值是多余的。

你可以在here上找到更多信息。

票数 1
EN

Stack Overflow用户

发布于 2021-03-02 18:16:24

我认为这是PyGame 2.0.0中的一个错误,同样的情况也会发生在我身上。似乎随PyGame一起分发的SDL版本有一些问题。

尝试使用系统安装的SDL2,例如使用LD_PRELOAD:

代码语言:javascript
复制
$ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libSDL2.so python app.py

您可以阅读有关issue here的更多信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59707994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档