首页 > 解决方案 > pygame窗口不会关闭

问题描述

我目前正在关注 Eric Matthes 的 Python Crash Course(第 1 版),并且正在尝试制作一个 pygame 程序。但是,我在关闭 pygame 窗口时遇到了麻烦,不幸的是,尝试其他帖子中提到的所有解决方案都对我不起作用。(我正在使用 Python 3.7.6、Spider 4.1.4 和 pygame 1.9.6。)

我当前的代码如下所示:(我最初是按照这本书,但后来独自修改了很多次)

import sys

import pygame

def run_game():
    
    pygame.init()
    screen = pygame.display.set_mode((1200,800))

    pygame.display.set_caption("Alien Invasion")
    
    bg_color = (230, 230, 230)

    running = True
    
    while running:
        
        for event in pygame.event.get():
            
            if event.type == pygame.QUIT:
                
                running = False
                pygame.quit()
                sys.exit()
                
        screen.fill(bg_color)
        
        pygame.display.flip()
        
run_game() 

可能有什么我错过或做错了吗?

任何帮助将非常感激!

更新:

当我使用 pygame 时,Python 总是进入“无响应”模式: 在此处输入图像描述

标签: pythonpygamewindow

解决方案


这可能会帮助你:

import pygame
import time
(width, height) = (300, 200)
screen = pygame.display.set_mode((width, height))
pygame.display.flip()
pygame.display.set_caption("Hello World")
running = True
try:
   while running:
       for event in pygame.event.get():
           if event.type == pygame.QUIT:
               running = False
   pygame.quit()
except SystemExit:
   pygame.quit()

我从这里得到了这个解决方案:关闭 Pygame 窗口


推荐阅读