使用pygame模块在python中使用fill方法

时间:2017-10-06 17:07:23

标签: python pygame

我使用fill方法用白色填充黑色屏幕,但它不起作用;它给了我一个黑屏。这是我的代码:

import pygame

class Bouncer(object):

    display_width = 600
    display_height = 400
    color_white = (255, 255, 255)
    clock = pygame.time.Clock()
    game_exit = False

    def __init__(self):

        pygame.init()
        self.game_display = pygame.display.set_mode((self.display_width, 
        self.display_height))


    def gameLoop(self):

        while not self.game_exit:

            for event in pygame.event.get():

                if event.type == pygame.QUIT:

                    self.game_exit = True
                    pygame.quit()
                    quit()

        self.game_display.fill(self.color_white)
        pygame.display.update()
        self.clock.tick(60)


game_instance = Bouncer()

game_instance.gameLoop()
  

它没有给我任何错误

1 个答案:

答案 0 :(得分:0)

这是Indentation的问题。您必须在应用程序循环中而不是在应用程序循环之后绘制场景:

class Bouncer(object):
    # [...]

    def gameLoop(self):

        while not self.game_exit:

            for event in pygame.event.get():

                if event.type == pygame.QUIT:

                    self.game_exit = True
                    pygame.quit()
                    quit()
   
        # INDENTATION

        #-->|

            self.game_display.fill(self.color_white)
            pygame.display.update()
            self.clock.tick(60)