qq_40707462 2020-08-17 15:31 采纳率: 0%
浏览 1082

使用pygame为什么总是闪退?

我看很多博客都说因为没有for event in pygame.event.get()循环而闪退,可我写了循环还是闪退,求问大佬还能是什么原因呀?

import pygame
import random


class Game:
    def __init__(self):
        pygame.init()
        pygame.display.set_mode((800, 600))  # 设置画布大小
        self.screen = pygame.display.get_surface()
        self.clock = pygame.time.Clock()

    def run(self):
        while True:
            for event in pygame.event.get():
                if event.type == pygame.QUIT:  # 退出游戏
                    pygame.display.quit()
                elif event.type == pygame.KEYDOWN:  # 有按键
                    self.keys = pygame.key.get_pressed()  
                elif event.type == pygame.KEYUP:
                    self.keys = pygame.key.get_pressed()
            self.screen.fill((random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)))  # 随机填充颜色
            pygame.display.update()
            self.clock.tick(60)


if __name__ == '__main__':
    game = Game()
    game.run

  • 写回答

4条回答 默认 最新

  • Python-ZZY 2021-08-29 08:02
    关注

    哦,我发现了,你最后面代码run()的括号没有加,所以程序没有进行调用

    评论

报告相同问题?