2017-10-12 34 views
0

如何在choice_f()draw_f()的功能之间暂停?如何在两个功能之间暂停?

while keepGoing: 
for event in pygame.event.get(): 
    if event.type==pygame.QUIT: 
     keepGoing=False 
    if event.type==pygame.KEYDOWN: 
     if event.key==pygame.K_SPACE: 
      choice_f() 
#I want a pause here. 
      draw_f() 
    pygame.display.update() 
pygame.quit() 

非常感谢您的帮助。

回答

0

如果我正确理解你在问什么,你可以简单地使用time.sleep(n)来达到目的。

如下:

import time 

while keepGoing: 
for event in pygame.event.get(): 
if event.type==pygame.QUIT: 
    keepGoing=False 
    if event.type==pygame.KEYDOWN: 
    if event.key==pygame.K_SPACE: 
     choice_f() 
     #Pause for 5 seconds Example. 
     time.sleep(5) 
     draw_f() 
    pygame.display.update() 
pygame.quit() 
+0

注:有'pygame.time.delay()'。它使你的延迟更准确。 –

+0

我做到了。当我编写这段代码时,函数choice_f()会在暂停后执行。我无法理解为什么函数的顺序被忽略。 如果我理解正确。首先,应该执行函数choice_f(),然后执行time.sleep(5),然后执行draw_f()。但我首先运行time.sleep(5),然后选择choice_f()和draw_f()。为什么我不知道。 –

0
#Everything is working. I did it. 

import time 
while keepGoing: 
    for event in pygame.event.get(): 
     if event.type==pygame.QUIT: 
      keepGoing=False 
     if event.type==pygame.KEYDOWN: 
     if event.key==pygame.K_SPACE: 
      choice_f() 
      pygame.display.flip() 
      pygame.time.delay(1000)) 
      draw_f() 
    pygame.display.update() 
pygame.quit()