PyQt5-使用速成

安装

我的python版本是python3.8
安装老是出错
经过试验成功的命令
pip3 install PyQt5-tools -i http://pypi.douban.com/simple --trusted-host=pypi.douban.com

安装的路径就在你的python文件的D:\pythonInstall\Lib\site-packages
designer.exe 就在这里面搜一下就能找到

designer.exe报错

点击designer.exe,发现启动失败
所在目录是C:\python\PycharmProjects\qt_example1\venv\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe

解决方案:把目录下的文件C:\python\PycharmProjects\qt_example1\venv\Lib\site-packages\PyQt5\Qt\plugins\platforms\qwindows.dll 替换覆盖到下面的目录即可:
C:\python\PycharmProjects\qt_example1\venv\Lib\site-packages\pyqt5_tools\Qt\bin\platforms\qwindows.dll

ui转py

到.ui文件的目录下,直接cmd进入,输入pyuic5 -o 转换的py文件 待转换的ui文件

报错

“AttributeError: 'Form' object has no attribute 'exec_'” when opening second window

原因是 子窗口没有引用主窗口实例的属性

解决办法:
def manual_self(self):
form2_ = Form2()
form2_.show()
form2_.exec_()

AttributeError: 'Ui_MainWindow' object has no attribute 'show'

在ui文件转成py文件之后需要增加

"""Main()代码"""
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys,os

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    mainMindow = Ui_Form()
    mainMindow.show()
    sys.exit(app.exec_())    

法一)

修改类,增加初始化。即增加红框里的内容。

法二)这样就可以在不修改的前提下,打开设计的界面
修改Main()代码

"""Main()代码"""
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys,os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
  
if __name__ == "__main__":
    App = QtWidgets.QApplication(sys.argv)    # 创建QApplication对象,作为GUI主程序入口
    aw = Ui_MainWindow()    # 创建主窗体对象,实例化Ui_MainWindow
    w = QMainWindow()      # 实例化QMainWindow类
    aw.setupUi(w)         # 主窗体对象调用setupUi方法,对QMainWindow对象进行设置
    w.show()               # 显示主窗体
    sys.exit(App.exec_())   # 循环中等待退出程序

详情参考

posted @ 2020-07-17 19:36  Nicky_啦啦啦是阿落啊  阅读(468)  评论(0编辑  收藏  举报