目錄
一、尋找designer.exe
二、no Qt platform plugin could be initialized 問題解決
三、ui文件轉換為py文件
四、pyqt5的使用教程
?
?
一、尋找designer.exe
頭疼,找了一上午都沒有找到這個的路徑,最后還是在評論區看到的,這也不能怪人家博主,一些關于路徑的博客還是得查找日期比較新的博客
配置Qt Designer到PyCharm:https://blog.csdn.net/qq_40386321/article/details/96451616
新版的designer.exe保存位置在:X:\Users\13711\AppData\Local\Programs\Python\Python37\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
個人覺得官方放這么隱秘估計就是不想我們用了
我自己這樣配置的時候用不了,出現這種問題
后來發現以下方法
二、no Qt platform plugin could be initialized 問題解決
將designer.exe改成pyqt5designer.exe就好了
X:\Users\13711\AppData\Local\Programs\Python\Python37\Scripts\pyqt5designer.exe
三、ui文件轉換為py文件
http://www.45fan.com/article.php?aid=19061906909242934592767988
很多文章都說直接右鍵ui文件——external tool——pyuic就行了,但是我試了,一直就卡在那里,也不知道是不是在運行,就是遲遲不出結果,后來看到一個直接通過腳本來實現的
1、到.ui文件的目錄下,直接cmd進入,輸入pyuic5 -o 轉換的py文件 待轉換的ui文件
這個過程需要幾秒鐘,耐心等待,不過我每次都成功了
2、
3、需要對test.py添加一點代碼使得設計好的UI能夠出現在我們面前
ui = Ui_Form()?? # 需要注意這個要改成你自己的類名稱
import sysif __name__ == "__main__":app = QtWidgets.QApplication(sys.argv) # 創建一個QApplication,也就是你要開發的軟件appMainWindow = QtWidgets.QMainWindow() # 創建一個QMainWindow,用來裝載你需要的各種組件、控件ui = Ui_Form() # ui是你創建的ui類的實例化對象ui.setupUi(MainWindow) # 執行類中的setupUi方法,方法的參數是第二步中創建的QMainWindowMainWindow.show() # 執行QMainWindow的show()方法,顯示這個QMainWindowsys.exit(app.exec_()) # 使用exit()或者點擊關閉按鈕退出QApplication
完整代碼:
# -*- coding: utf-8 -*-# Form implementation generated from reading ui file 'test.ui'
#
# Created by: PyQt5 UI code generator 5.15.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_MainWindow(object):def setupUi(self, MainWindow):MainWindow.setObjectName("MainWindow")MainWindow.resize(800, 600)self.centralwidget = QtWidgets.QWidget(MainWindow)self.centralwidget.setObjectName("centralwidget")self.treeView = QtWidgets.QTreeView(self.centralwidget)self.treeView.setGeometry(QtCore.QRect(300, 210, 256, 192))self.treeView.setObjectName("treeView")MainWindow.setCentralWidget(self.centralwidget)self.menubar = QtWidgets.QMenuBar(MainWindow)self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))self.menubar.setObjectName("menubar")MainWindow.setMenuBar(self.menubar)self.statusbar = QtWidgets.QStatusBar(MainWindow)self.statusbar.setObjectName("statusbar")MainWindow.setStatusBar(self.statusbar)self.retranslateUi(MainWindow)QtCore.QMetaObject.connectSlotsByName(MainWindow)def retranslateUi(self, MainWindow):_translate = QtCore.QCoreApplication.translateMainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
四、pyqt5的使用教程
https://blog.csdn.net/azuremouse/article/details/90338961
含界面比例自適應、傳參等
五、pyqt5中pyuic配置
https://blog.csdn.net/qq_38187188/article/details/104643096