Окно Pygame появляется, но изображение не появляется - PullRequest
0 голосов
/ 06 августа 2020

Я следую учебнику из книги, в котором мне изначально предлагалось использовать .bmp для изображения, потому что это был тип файла изображения по умолчанию, который pygame определяет и может открыть, но это не сработало. У меня pygame.error сообщает, что он не может его открыть, и я подозреваю, что я использую macOS. Поэтому я попытался использовать .png, но это тоже не работает.

import pygame

class Ship ():

def __init__(self, screen):
    """Initialize the ship and set its starting position."""
    self.screen = screen

    # Load the ship image and get its rect.
    self.image = pygame.image.load('images/ship.png')
    self.rect = self.image.get_rect()
    self.screen_rect = screen.get_rect()

    # Start each new ship at the bottom center of the screen.
    self.rect.centerx = self.screen_rect.centerx
    self.rect.bottom = self.screen_rect.bottom

def blitme(self):
    """Draw the ship at its current location."""
    self.screen.blit(self.image, self.rect)

1 Ответ

0 голосов
/ 06 августа 2020

У вас есть основная oop, которая обновляет дисплей? (спрашивая, поскольку я не вижу этого в вашем коде) вот так:

done=False
while done:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                    done=True
    pygame.display.flip() #Update the screen

Чтобы изображение отображалось, вам нужно обновить окно, что и делает pygame.display.flip().

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