0
def setPixData(self,data):
    print(data) #this print the image file name correctly e.g asdfghj.jpg
    img=QtGui.QImage(QtCore.QCoreApplication.applicationDirPath ()+"/temp/"+data)
    pix=QtGui.QPixmap.fromImage(img)
    self.driver_ui.pix.setPixmap(pix)

当我从开发代码运行它时,这会正确加载图像。一旦我用 cx_freeze 冻结它并将其安装在最终目标目录中,它就不会加载图像。即使图像位于指定路径中。

我已经尝试将完整路径硬编码到冻结版本中,但仍然没有运气。我f.write()在上述代码的每一行都放置了一个,它们都运行没有错误。我认为问题出在QImage因为它返回 trueisNull()

可能是什么问题,如果QImage没有被 cx_freeze 添加,它肯定会抛出异常并且不会f.write()在下一行运行。我在这里迷路了。

注意:它是 python 中的 Windows GUI 应用程序。

4

1 回答 1

0

您可能给它一个不正确的文件路径。如果你不给它一个正确的文件路径,文件存在于某处的事实对QImage 没有帮助。

于 2012-11-18T09:58:08.527 回答