Pygame не показывает ничего, пока я не закрою - PullRequest
1 голос
/ 11 марта 2020

Я написал следующий код:

import pygame

from pygame.locals import (
    K_UP,
    K_DOWN,
    K_LEFT,
    K_RIGHT,
    K_ESCAPE,
    KEYDOWN,
    QUIT,
)

pygame.init()


SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600

screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))


running = True

while running:
     for event in pygame.event.get():
        if event.type == KEYDOWN:
            if event.key == K_ESCAPE:
                running = False
        elif event.type == QUIT:
            running = False

screen.fill((255, 255, 255))
surf = pygame.Surface((50, 50))
surf.fill((0, 0, 0))
rect = surf.get_rect()

screen.blit(surf, (SCREEN_WIDTH/2, SCREEN_HEIGHT/2))
pygame.display.flip() 

Но он показывает код в программе только для 2/3 кадров после его закрытия. Я знаю, что этот вопрос задавался ранее, но была некоторая проблема в l oop но l oop правильно, насколько я знаю, что не так в этом коде?

1 Ответ

3 голосов
/ 11 марта 2020

Python использует отступ для управления областью видимости. Ваш код рисования выходит за рамки вашей игры l oop. Если вы сделаете отступ для всех кодов рисования, которые должны быть внутри вашей игры l oop, то он будет рисоваться до тех пор, пока вы не выйдете из l oop.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...