1. 安装pycharm , anaconda,创建虚拟环境,在虚拟环境中通过anaconda安装pyqt4,
具体细节可参考博客:https://blog.youkuaiyun.com/Strive_For_Future/article/details/81184879
2.pyqt4的tool配置与pyqt5稍有不同:
具体如下:



主要的不同为:QtDesigner 的名称变成来:designer-qt4
PyUIC 的Arguments中的 PyQt5 变成 PyQt4
3.用PyUIC将 .ui文件转变成 .py之后,ui_main.py中的代码稍有不同,具体如下:
#-*-coding:utf-8-*-
# -*- coding: utf-8 -*-
from PyQt4 import QtGui
from ui import *
import client as myMainWindow #client 为 client.ui -->client.py
class MainWindow(QtGui.QDialog):
def __init__(self,parent=None):
QtGui.QWidget.__init__(self,parent)
self.ui=myMainWindow.Ui_Dialog()# Ui_Dialog为.ui产生.py文件中窗体类名,经测试类名以Ui_为前缀,加上UI窗体对象名(此处为Dialog,见上图)
self.ui.setupUi(self)
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
myapp=MainWindow()
myapp.show()
app.exec_()
代码中,PyQt4 与PyQt5的主要不同为:
PyQt4:from PyQt4 import QtGui
QtGui.QWidget.__init__(self,parent)
app = QtGui.QApplication(sys.argv)
## 信号与槽的connect方式
self.connect(self.widget_name, SIGNAL("signal_name(args)"), self.slot_name)
(举例:QtCore.QObject.connect(self.ui.btn_show_picture, QtCore.SIGNAL('clicked()'), self.wzg_clicked))
PyQt5:from PyQt5 import QtWidgets
QtWidgets.QWidget.__init__(self,parent)
app = QtWidgets.QApplication(sys.argv)
## 信号与槽的connect方式
self.widget_name.signal_name.connect(self.slot_name)
(举例:self.ui.btn_show_picture.clicked.connect(self.wzg_clicked))
本文详细介绍了从PyQt4到PyQt5的转换步骤,包括工具配置、.ui文件转换及代码差异。重点讲解了QtDesigner、PyUIC的使用变化,以及信号与槽的连接方式区别。
1万+

被折叠的 条评论
为什么被折叠?



