我有一个 Pygame 游戏,但屏幕大小无法更改,即使我想要扩大。有什么办法可以解决吗?
当您调用pygame.display.set_mode()
时,通过设置pygame.RESIZABLE
标志,您可以创建一个可调整大小的显示器。
window = pygame.display.set_mode((width, height), pygame.RESIZABLE)
当窗口尺寸改变时,就会出现 pygame.VIDEORESIZE
事件。例如:
import pygame
pygame.init()
window = pygame.display.set_mode((800, 600), pygame.RESIZABLE)
run = True
while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
elif event.type == pygame.VIDEORESIZE:
window = pygame.display.set_mode((event.w, event.h), pygame.RESIZABLE)
# [...]
width
和height
(这是你之前不喜欢的)。无论如何,你可以通过window.get_size()
获取窗口的大小,分别通过window.get_width()
和window.get_height()
获取宽度和高度。根据当前窗口的大小重新创建按钮。 - Rabbid76pygame.VIDEORESIZE
事件。该事件仅在调整窗口大小和最大化(全屏)时触发。最小化只是将窗口“隐藏”。 - Rabbid76