Pygame在退出/退出时冻结

时间:2016-08-27 14:46:45

标签: python pygame

我已经在互联网上对这个问题进行了研究,但我的情况没有解决方案......当我尝试用(X)按钮关闭窗口时窗口冻结。 正如我所说,我没有在其他帖子上找到任何解决方案,所以我来到这里寻求帮助。谢谢。

#!/usr/bin/python
import sys
import pygame
# initialize
pygame.init()
# colors 
black = (0,0,0)
white = (255,255,255)
red = (255,0,0)
green = (0,255,0)

# window size
w_size = [700,500]
main_screen = pygame.display.set_mode(w_size)
# Window info
pygame.display.set_caption("Cancer Cell")

# manage screen update time
clock=pygame.time.Clock()

#background image
bg_img = pygame.image.load("/img/bg_img.png").convert()

# Main loop
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
    # GAME LOGIC - BEGINNING


    # -------- DRAWINGS - BEGINNING --------
    main_screen.blit(bg_img, [0,0])
    # -------- DRAWINGS - END ----------


    # update screen
    pygame.display.flip()
    clock.tick(20) # 20 FPS limit for loop.

pygame.quit()

4 个答案:

答案 0 :(得分:0)

您的代码在我的平台上运行良好。 我的平台: Scientific Linux 7(RHEL 7) Python:3.4.3 Pygame版本:1.9.2b8 窗口管理器:Gnome3

您的代码中也可能存在错误。 “/img/bg_img.png”建议使用绝对路径,这是可能的,但非常罕见:)。

答案 1 :(得分:0)

非常适合我。请参阅下面的演示:

enter image description here

答案 2 :(得分:0)

你的代码不仅在Linux Mate 17,python 2.7.6上按预期工作,而且它也适用于sys.exit()而不是pygame.quit()或者根本没有,即没有sys.exit()或{ {1}}

答案 3 :(得分:0)

事实证明,IDLE是造成问题的原因...... 我试图从命令行运行代码,它运行得很好!

我所使用的IDLE称为Wing101。