为什么Pygame窗口无法正确关闭?

5
当我试图关闭程序窗口时,程序会冻结,然后我就不得不强制退出程序。为什么点击“X/关闭”按钮时程序不能正常关闭呢?另外,我正在使用Python 2.7版本,不知道是否有关系。
import pygame
import os, sys
from itertools import *
from oryxsprites import *
from oryxbackground import *

running = True


while running:

    backgroundmain()
    pygame.display.set_caption('OryxGame')
    #pygame.display.set_icon(biggrasstile)

    for event in pygame.event.get():
         if event.type == pygame.QUIT:
             running = False
2个回答

5

来自一篇运动代码与你的非常相似的文章的引用:

现在窗口会持续存在,只要'running'等于True, 直到你关闭窗口(点击X)。请注意,如果你使用Python编程的IDE,则可能会干扰Pygame。这通常不是一个大问题,但它可能会导致Pygame窗口无法正确关闭。如果出现这种情况,请添加pygame.quit()以解决问题。


谢谢,顺便说一下,我是从另一个教程中学到了那段代码。 - enrique2334

1

在Python 3.2和pygame 1.9 win32中,sys.exit()是无用的(在在线教程中看到)。 pygame.quit()可以完美地工作。


OP正在询问Python 2.7,不过这对两个版本来说是一样的吗? - GoBusto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接