Python:使用pyinstaller将ui文件包含在可执行文件中

时间:2020-03-03 14:08:51

标签: python pyqt5 pyinstaller

我正在尝试使用pyinstaller生成可执行文件。我正在使用PyQt5,所以我有一个.ui文件。我需要一个可执行文件,不需要单独使用ui文件,因此所有内容都在一个文件中。我尝试了几种方法,例如描述为here,但我没有理解。谁能帮我? 我收到错误FileNotFoundError:[Errno 2]没有这样的文件或目录:'C:\ Users \ xxx \ AppData \ Local \ Temp \ _MEI181562 \ visu.ui'

这是一个最小的示例: visu.py

import sys
from PyQt5 import QtWidgets, uic
Ui_MainWindow, QtBaseClass = uic.loadUiType('visu.ui')
class MyWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self):
        QtWidgets.QMainWindow.__init__(self)
        Ui_MainWindow.__init__(self)
        self.setupUi(self)
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())

还有visu.ui

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>Dialog</class>
 <widget class="QDialog" name="Dialog">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>172</width>
    <height>122</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>Dialog</string>
  </property>
  <widget class="QPushButton" name="pushButton">
   <property name="geometry">
    <rect>
     <x>40</x>
     <y>50</y>
     <width>93</width>
     <height>28</height>
    </rect>
   </property>
   <property name="text">
    <string>Ok</string>
   </property>
  </widget>
 </widget>
 <resources/>
 <connections/>
</ui>

0 个答案:

没有答案