0

我已经使用 python 和 wxpython 创建了一个程序。我使用 py2exe 创建了一个可执行文件。IT 工作正常,但我将公司徽标用作闪屏和打印图纸。我必须删除启动画面才能使可执行文件正常工作。在错误文本文件中,我得到以下信息:

回溯(最后一次调用):文件“printGland.pyc”,第 418 行,OnPrintPage 文件“wx_gdi.pyc”,第 3459 行,DrawBitmap wx._core.PyAssertionError: C++ 断言“bmp.Ok()”在 . ...\src\msw\dc.cpp(1181) in wxDC::DoDrawBitmap(): wxDC::DrawBitmap 中的位图无效

我假设 bmp 图像尚未包含在可执行文件中。代码加载时是否有问题?

 def __init__(self,parent,id):
    # Splash Screen
    image = wx.Image("Image.bmp",wx.BITMAP_TYPE_BMP)
    bmp = image.ConvertToBitmap()
    wx.SplashScreen(bmp,wx.SPLASH_CENTRE_ON_SCREEN|wx.SPLASH_TIMEOUT,1000,None,-1)
    wx.Yield()

还是我在使用 py2exe 时应该添加到安装文件中的东西?关于如何补救这种情况的任何想法?

4

2 回答 2

0

您必须确保将该文件包含在与可执行文件相同的目录中。如果您将图像与它一起复制,它会起作用吗?否则,您可以使用 wxPython 的 img2py 脚本将您的图像转换为 Python 文件并以这种方式捆绑它。

这有点过时了:http: //www.blog.pythonlibrary.org/2008/05/23/wxpython-embedding-an-image-in-your-title-bar/

这是文档页面:http ://wxpython.org/docs/api/wx.tools.img2py-module.html

于 2012-07-27T15:16:50.167 回答
0

参考

图像文件是否存在于当前工作目录中?您可能需要指定图像文件所在的路径,而不仅仅是假设您给出的 CWD。

如需更多讨论,请点击此处

于 2012-07-27T07:00:27.767 回答