Форум сайта python.su
Что то я запутался :)
Как не находит картинки? выведи в дебаг путь к картинке, передаваемый функции, из заодно выведи os.getcwd()
Офлайн
Картинка:
C:/Job/Current/Scripts/Milfoil/dist/pics/packs/Standard/064.gifПрямой вызов os.getcwd():
C:\Job\Current\Scripts\Milfoil\distПолучено так:
QtGui.QMessageBox.information(self, '', picPath, QtGui.QMessageBox.Ok)
QtGui.QMessageBox.information(self, '', os.getcwd(), QtGui.QMessageBox.Ok)
Офлайн
The gray Cardinal
Привет.
Посмотрел milfoil.py .
PyQt4.4.2 (Qt4.4.0) , Mandriva2007:
=============================
Выдает:
Traceback (most recent call last):
File "./milfoil.py", line 708, in mousePressEvent
mime.setImageData(QtCore.QVariant(self.pixmap())) # запоминаем рисунок
TypeError: argument 1 of QVariant() has an invalid type
#####################################################
#self.scene.clear() # очистка сцены
self.scene = Scene()
self.view = QtGui.QGraphicsView(self.scene, self)
self.view.setBackgroundBrush(QtGui.QColor(0, 128, 64)) # цвет фона представления
self.setCentralWidget(self.view)
#####################################################
Офлайн
gmorgunov
Ага, спасибо.
Вопрос с путями при компиляции в exe актуален.
Офлайн
Сейчас попробовал собрать другим способом, “python setup.py build”, файл setup.py:
from cx_Freeze import setup, Executable
setup(name = "milfoil",
version = "0.2",
description = "milfoil patience",
executables = [Executable("milfoil.py")],
options = {'build_exe' : {
'includes' : ['sip', 'encodings.cp1251'],
'excludes' : ['_ssl', 'pyreadline', 'difflib', 'doctest', 'optparse', 'pickle', 'calendar'],
'base' : 'Win32GUI',
}}
)
QtGui.QMessageBox.information(self, '', picPath, QtGui.QMessageBox.Ok)
QtGui.QMessageBox.information(self, '', unicode(QtGui.QPixmap(picPath).isNull()), QtGui.QMessageBox.Ok)
QtGui.QMessageBox.information(self, '', unicode(os.path.exists(picPath)), QtGui.QMessageBox.Ok)
Офлайн
Нашел как это лечить (наверное, многим кто наступил на эти грабли пригодится):
в папку с бинарником (после компиляции) положить папку “imageformats” с DLL'ями (C:\Python26\Lib\site-packages\PyQt4\plugins\imageformats).
После этого Pixmap начинает создаваться
Отредактировано (Ноя. 13, 2009 05:49:24)
Офлайн