python-3.x - PyQt5 如何在包中加载 UI 文件
问题描述
我正在尝试在 Mac 上以捆绑包的形式加载 Qt5 文件。
#!/usr/bin/env python
from PyQt5.QtWidgets import (QApplication, QMainWindow)
from PyQt5 import uic
import sys
import os
MainUI = os.path.dirname(os.path.realpath(__file__)) + "/data/MainUI.ui"
Ui_MainWindow, QtBaseClass = uic.loadUiType(MainUI)
class MyForm(QMainWindow,Ui_MainWindow):
def __init__(self):
QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
if __name__ == '__main__':
app = QApplication(sys.argv)
w = MyForm()
w.show()
sys.exit(app.exec_())
这在命令行中运行良好,但是当我将它与 pyinstaller 捆绑在一起时,程序中止,因为它找不到文件 mainUI.ui。我找到了这个解决方案,但我无法让它工作(找不到 resource_path 函数)。我做了另一个,效果很好,但是这个(一个文件程序)我无法工作。
编辑:我停止尝试解决此问题并采用多文件解决方案:1 个文件用于启动,一个文件用于 PyQt 函数。这100%有效。
解决方案
推荐阅读
- jquery - 使用 jQuery 加载 Wordpress 页面以制作网站 1 页
- android - 从适用于 Android 的 Google 登录迁移到 Firebase 身份验证
- hex - 十六进制到纬度弧度的转换
- javascript - 摩卡跳过测试
- c# - C# 将文本附加到某一行
- r - 如何替换列表中所有元素的特定值
- python - 在 Visual Studio 代码的同一项目文件夹中使用 python 包
- php - Symfony - 如何为 symfony 服务选择正确的接口(类型提示)?
- python - 无法在 django admin 上发布 - 无法将字节连接到字符串
- ruby-on-rails - 由于模型中的列尚不存在,因此从头开始迁移