1

我在pygame中定义了一些函数。

import time
import pygame, sys
from pygame.locals import*
def screen(a,b,z,v):
    screen = pygame.display.set_mode((a,b),z,v)
def image1(a,x,y):
    b = pygame.image.load(a).convert()
    screen.blit(b,(x,y))

我添加了一些代码:

a = "white.jpg"
screen(50,50,0,32)

但是,我没有像往常一样得到一个窗口。为什么会这样?为了使问题更清楚,这就是我得到的:

Python 2.7 (r27:82525, Jul  4 2010, 07:43:08) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 

它卡在那里并且没有加载,有时python提示符会自行关闭。有人可以解释吗?*编辑:我在代码中定义了其他功能。看来定义的函数太多了。我如何停止错误?

4

2 回答 2

1

可能缺少其他位,但您需要pygame.init()在执行其他任何操作之前先调用。

您可以在您的screen function或在您的主代码中调用它之前添加该调用:

def screen(a,b,z,v):
    pygame.init()
    screen = pygame.display.set_mode((a,b),z,v)

或者

pygame.init()
screen(50,50,0,32)
于 2013-10-05T11:29:24.303 回答
0

迟到总比没有好,一开始我也遇到了同样的问题,因为我忘了添加这个,

for event in pygame.event.get():              
    if event.type == pygame.QUIT: 
        pygame.quit()
于 2021-08-10T19:16:43.060 回答