Pygame - 显示模式



如上例所示,显示界面是由 pygame.display 模块中定义的 set_mode() 函数创建的。

pygame.display.set_mode(size, flags, depth, display, vsync)

size 参数是一个包含宽度和高度(以像素为单位)的元组。如果未设置 size,则界面的大小将为当前分辨率。

flags 参数控制显示类型,由以下预定义常量控制:

pygame.FULLSCREEN 创建全屏显示
pygame.DOUBLEBUF 推荐用于 HWSURFACE 或 OPENGL
pygame.HWSURFACE 硬件加速,仅在 FULLSCREEN 模式下
pygame.OPENGL 创建可渲染 OpenGL 的显示
pygame.RESIZABLE 显示窗口应可调整大小
pygame.NOFRAME 显示窗口将没有边框或控件
pygame.SCALED 分辨率取决于桌面大小并缩放图形
pygame.SHOWN 窗口以可见模式打开(默认)
pygame.HIDDEN 窗口以隐藏模式打开

如果将 vsync 参数设置为 1,则可以获得具有垂直同步的显示,但不能保证一定能获得。此请求仅对使用 pygame.OPENGL 或 pygame.SCALED 标志调用的 set_mode() 起作用。

显示索引 0 表示使用默认显示。深度参数将默认为系统最佳和最快的颜色深度。对于给定的宽度和高度,Pygame 将从 list_modes() 中选择最佳可用模式。

>>> print (pygame.display.list_modes())
[(1366, 768), (1360, 768), (1280, 768), (1280, 720), (1024, 768), (800, 600), (640, 480)]

pygame.display.mode_ok()

此函数选择显示模式的最佳颜色深度。它用于确定请求的显示模式是否可用。如果无法设置显示模式,它将返回 0。否则,它将返回与请求的显示最匹配的像素深度。

pygame.display.update()

此函数将更新整个显示的内容。

广告