Загрузка файлов .ui QtDesigner в PySide - PullRequest
28 голосов
/ 22 августа 2011

Я ищу простой пример того, как напрямую загрузить сгенерированный QtDesigner файл .ui в приложение Python.

Я просто хотел бы избежать использования pyuic4.

Ответы [ 3 ]

43 голосов
/ 18 августа 2013

Для полных noobs в файлах PySide и .ui, вот полный пример:

37 голосов
/ 22 августа 2011

PySide, в отличие от PyQt, реализовал класс QUiLoader для непосредственного чтения в файлах .ui.Из связанной документации

loader = QUiLoader()
file = QFile(":/forms/myform.ui")
file.open(QFile.ReadOnly)
myWidget = loader.load(file, self)
file.close()
4 голосов
/ 26 января 2016

Другой вариант, основанный на более короткой директиве загрузки, найден на https://askubuntu.com/questions/140740/should-i-use-pyqt-or-pyside-for-a-new-qt-project#comment248297_141641. (В принципе, вы можете избежать всего этого открытия и закрытия файла.)

import sys
from PySide import QtUiTools
from PySide.QtGui import *

app = QApplication(sys.argv)
window = QtUiTools.QUiLoader().load("filename.ui")
window.show()
sys.exit(app.exec_())

Примечания:

  • filename.ui должен находиться в той же папке, что и ваш файл .py.
  • Вы можете использовать if __name__ == "__main__":, как указано в Ответ BarryPye
...