Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 4, 2011 20:25:13

Te0reTiK
От:
Зарегистрирован: 2009-09-09
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

py2exe uic loader + Qt.phonon

Доброго времени суток, уважаемые питонщики.

Есть проект на py + sqlite3 + PyQt, имеющий поддержку плагинов
И при создании exe с помощью py2exe проблем не возникает.
Однако некоторые плагины требуют phonon для воспроизведения аудио/видео.

Плагин с phonon подгружает GUI из ui-файла.

Программа выкидывается с ошибкой в модуле uic, - ругается на то, что не знает, что такое Phonon.VideoPlayer
“PyQt4.uic.exceptions.NoSuchWidgetError: Unknown Qt widget: Phonon.VideoPlayer”

Проблему удалось решить ВРУЧНУЮ (после “компиляции” ехе) копированием папки Python27\Lib\site-packages\PyQt4\uic\widget-plugins в dist\library.zip\PyQt4\uic.

Мне такой способ ручной доработки не подходит, нужно указать в setup.py, чтобы требуемая папка автоматически копировалась в нужное место.

Как это сделать?



Офлайн

#2 Окт. 5, 2011 11:09:43

Te0reTiK
От:
Зарегистрирован: 2009-09-09
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

py2exe uic loader + Qt.phonon

перешёл на PySide и решил сразу две проблемы - ограничения PyQt + “Unknown Qt widget: Phonon.VideoPlayer”
При этом потребовалось немного подкорректировать исходник, но не только заменить импорт и pyqtSignal на Signal



Офлайн

#3 Окт. 6, 2011 16:40:12

helm2004
От: Украина, Винница
Зарегистрирован: 2008-02-27
Сообщения: 630
Репутация: +  9  -
Профиль   Отправить e-mail  

py2exe uic loader + Qt.phonon

Расскажешь как пользоваться Phonon?

Офлайн

#4 Окт. 7, 2011 11:57:46

Te0reTiK
От:
Зарегистрирован: 2009-09-09
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

py2exe uic loader + Qt.phonon

Могу написать статью по изготовлению виджета - что-то вроде VideoPreview. а вообще, я ничего нового не придумал, использовал материал и инета, есть неплохая статья об использовании Phonon в c++ http://2developers.net/post/phonon_part_1.html - я по ней изучал



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version