2013-09-15 3 views
0

Я хочу щелкнуть по [x] в углу окна и закрыть это приложение. Вместо этого он замерзает и не реагирует. Спасибо за любую помощь.Как закрыть окно, используя [x] в углу без замерзания?

import sys 
#import and init pygame 
import pygame 
pygame.init() 

#create the screen 
window = pygame.display.set_mode((640, 480)) 

#draw a line - see http://www.pygame.org/docs/ref/draw.html for more 
pygame.draw.line(window, (255, 255, 255), (0, 0), (30, 50)) 

#draw it to the screen 
pygame.display.flip() 

#input handling (somewhat boilerplate code): 
while True: 
for event in pygame.event.get(): 
    if event.type == pygame.QUIT: 
     sys.exit(0) 
    else: 
     print event 

Я привык к java и поэтому задавался вопросом, было ли какое-то действие для объекта и закрытия для рамки.

+0

Или, если 'в то время как True:' это 'пока не сделано:' и бросить курить вы установите 'сделано = Правда, это прекратится. – ninMonkey

ответ

3

Попробуйте добавить pygame.quit() до sys.exit(0), чтобы закрыть окно Pygame, например так:

import sys 

import pygame 
pygame.init() 

window = pygame.display.set_mode((640, 480)) 
pygame.draw.line(window, (255, 255, 255), (0, 0), (30, 50)) 
pygame.display.flip() 

while True: 
    for event in pygame.event.get(): 
     if event.type == pygame.QUIT: 
      pygame.quit() 
      sys.exit(0) 
     else: 
      print event 
+0

Отлично работает –

Смежные вопросы