3

打开一扇pygame.display窗户,我召唤pygame.display.quit()它来摧毁窗户。
因为需要再次打开窗口,所以调用了pygame.display.init()and pygame.display.set_mode(),但是调用了这两个函数之后,什么也没有发生。
谁能指出我这个问题的根源?

4

3 回答 3

1

这是带有 gui 模块的示例代码...每当您调用screen_off()时,显示就会退出。每当您想恢复显示时,请键入您之前使用的所有内容以将其打开。

如果需要,请使用pygame.display.quit(),而不将它放在screen_off()函数内部。我建议把你用来打开显示器的所有代码放入一个函数中,这样你就不必在它被杀死后再次输入它来打开它。

from pygame import *
from pygame.locals import *
import pygame, pygame.locals

from easygui import *

def screen_off():
    pygame.display.quit()

pygame.init()
canvas = pygame.display.set_mode((400,400),0,32)
red = (255,0,0)
canvas.fill(red)
pygame.display.update()
screen_off() #display is now OFF...


choice = ['Yes', 'No']
cc = buttonbox('Continue?', "Options", choice)
if cc == "Yes":
    #if you don't want to type these arguments below again to turn on the display then
    #put them into a function and call it
    pygame.init()
    canvas = pygame.display.set_mode((400,400),0,32)
    purple = (204,0,204)
    canvas.fill(purple)
    pygame.display.update()
    #display is now ON...
于 2012-06-27T23:01:53.623 回答
0

它应该是:

pygame.init()

所以我假设:

pygame.quit() 

工作相同

于 2013-12-16T17:29:38.200 回答
-1

您是否尝试过调用 justpygame.quit()pygame.init()?我不相信有一个pygame.display.quit()

于 2012-05-28T05:46:00.507 回答