在Mac上无法关闭Pygame窗口问题

4

我编写了一个使用 Pygame 的 Python 程序。由于某种原因,当我按下红色叉时,无法关闭窗口。我尝试使用 Command+Q,但也不起作用。我必须退出 idle(我的 Python 解释器)才能关闭窗口。是否有其他方法通过按右上角的红色 'x' 来关闭窗口?

我的代码:

import pygame
import sys
from pygame.locals import *

pygame.init()
screen = pygame.display.set_mode((800,800))
while 1:     
    pygame.display.update()
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()

尝试通过命令行运行文件,而不是从IDLE执行它,只需双击.py文件即可。 - Pzet
@Pzet 从命令行运行可以工作,但我需要一种能够从 IDLE 运行程序的方法,因为这是我正在处理的任务要求。感谢您提出的建议。 - Qiu YU
1
如果您正在使用IDLE运行它,使用“raise SystemExit”而不是“sys.exit()”。 - Starbuck5
3个回答

2
你应该强制退出窗口或运行另一个程序来关闭窗口。当你运行不同的程序时,窗口应该会关闭。

2
如果您使用不同的Python解释器,则可以正确关闭Pygame窗口。尝试使用PyCharm,您可以使用PyCharm关闭Pygame窗口。

1

试试这个:

import pygame, sys
from pygame.locals import *

pygame.init()
screen = pygame.display.set_mode((800,800))
while True:     
    pygame.display.update()
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()

你的代码和我的一样。while Truewhile 1是一样的,它们都是永久循环。由这段代码创建的窗口也无法关闭。 - Qiu YU

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