我试图用py2exe(我有python2.7)使pygame文件可执行。程序由3个脚本组成。在
我写的设置是:from distutils.core import setup
import py2exe
setup(console=["main.py"])
在命令窗口中,我运行了设置:
^{pr2}$
我在dist文件夹里找到了我的program.exe。问题是,当我运行它时,一个黑色的窗口打开并立即关闭。在
现在,我知道如果程序不等待任何输入,这是正常的,但是在我的程序中有一个while循环,应该一直持续到用户关闭游戏窗口。我也试着在程序的开头放一个原始的输入,但是它什么也没改变。在
然后我尝试创建一个非常简单的文件来测试:a = raw_input("hello")
print(a)
我把它转换成了.exe,它就可以用了。所以,我想问题出在我的pygame文件中。下面是主程序的代码(函数和类是游戏的另外两个脚本):import pygame, sys, functions
from classes import *
pygame.init()
pygame.font.init()
display_width = 600
display_height = 600
screen = pygame.display.set_mode((display_width,display_height))
menuImage = pygame.image.load("images/menu_t.jpg")
# colors
backgroundColor = (255,255,102)
buttonColor = (153,76,0)
buttonColorBright = (204,102,0)
# create tiles
for y in range(0,screen.get_height(),Tile.WIDTH):
for x in range(0,screen.get_width(),Tile.HEIGHT):
Tile(x,y)
# starting menu
while True:
screen.blit(menuImage,(0,0))
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.KEYUP:
if event.key == pygame.K_ESCAPE:
pygame.quit()
sys.exit()
functions.button(screen,"Play",display_width/2-50,display_height/2,100,50,buttonColor,buttonColorBright,"play_game")
functions.button(screen,"Quit",display_width/2-50,display_height/2+75,100,50,buttonColor,buttonColorBright,"quit")
pygame.display.flip()
这是主,它应该加载一个背景图像和2个按钮。可执行程序不能正常工作的原因是什么?在