Когда я изменяю размер окна, границы поверхностей не меняются, как окна. Отрисовка текста на основной поверхности в начальных границах окна (600x340). Почему? Также визуализируйте изображения (я вырезал эту часть кода, чтобы упростить проблему) в качестве фона, и он обычно отображается в соответствии с границами нового окна (я перетаскиваю прямо на основную поверхность (победа)). Проблема, я думаю, в дополнительных поверхностях (text_surf). Почему они не изменяют размер?
import pygame
import time
pygame.init()
run=True
screen_width=600
screen_height=340
black=(0,0,0)
white=(255,255,255)
font1=pygame.font.SysFont("arial",45)
text_press=font1.render("press any key to play!",0,(100,0,0))
win=pygame.display.set_mode((screen_width,screen_height),pygame.RESIZABLE)
text_surf=pygame.Surface((screen_width,screen_height),pygame.RESIZABLE)
background=pygame.Surface((screen_width,screen_height),pygame.RESIZABLE)
while run==True:
pygame.time.delay(16)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run=False
if event.type == pygame.VIDEORESIZE:
surface = pygame.display.set_mode((event.w, event.h),pygame.RESIZABLE)
screen_width=event.w
screen_height=event.h
win.fill((white))
background.fill((120,120,100))
win.blit(background,(0,0))
text_surf.fill((black))
text_surf.blit(text_press, (screen_width*0.5-50,screen_height*0.5+100))
text_surf.set_colorkey(black)
text_surf.set_alpha(150)
win.blit(text_surf,(0,0))
pygame.display.update()
pygame.quit()
text_surf
не меняется волшебным образом. Вам нужно создать новую Surface с новым размером. - person Rabbid76   schedule 17.01.2021