一、下载安装

PySide2、PyQt5 都是基于Qt库
PySide2是Qt团队开发的,开发时间比较晚
PyQt5是其他团队开发的,开发时间比较早,故更为人所知

为了方便学习,我这里重新创建各环境空间,专门为Qt所创建,用于设计窗口页面UI设计

打开Anaconda Promptconda create -n Qt python==3.9.2 其中Qt为环境空间名称,可以修改,后面的python版本号也可以自定义选择

pyqt 打开eml文件 pyqt怎么打开_pyqt 打开eml文件


切换到Qt环境空间,conda activate Qt

pyqt 打开eml文件 pyqt怎么打开_pyqt_02

从豆瓣源下载安装PySide2:pip install pyside2 -i https://pypi.douban.com/simple/ 安装PyQt5 : pip install PyQt5 -i https://pypi.douban.com/simple 安装相关工具包:pip install PyQt5-tools -i https://pypi.douban.com/simple

pyqt 打开eml文件 pyqt怎么打开_windows_03

二、Qt designer(Qt设计师)

G:\Anaconda3\envs\Qt\Lib\site-packages\PySide2,其中G:\Anaconda3\envs\Qt为刚才创建的环境空间的路径

找到designer.exe,打开

pyqt 打开eml文件 pyqt怎么打开_pyqt_04


Widge为例,点击之后创建

pyqt 打开eml文件 pyqt怎么打开_windows_05


例如

创建buttontextedit

pyqt 打开eml文件 pyqt怎么打开_windows_06


双击 对象 可以修改控件对象的名称

pyqt 打开eml文件 pyqt怎么打开_pyqt 打开eml文件_07


placeholderText可显示提示信息

pyqt 打开eml文件 pyqt怎么打开_windows_08


pyqt 打开eml文件 pyqt怎么打开_windows_09


pyqt 打开eml文件 pyqt怎么打开_pyqt_10


设计好之后保存一下

例如创建一个新的文件夹,G:\PyCharm\workspace\Qt 保存名称为,test1.ui

pyqt 打开eml文件 pyqt怎么打开_windows_11


通过Notepad++打开看下这个test1.ui是个啥

pyqt 打开eml文件 pyqt怎么打开_Qt_12


很显然这个ui文件也就是个xml文件而已

pyqt 打开eml文件 pyqt怎么打开_pyqt 打开eml文件_13

三、结合PyCharm使用

将刚才创建的Qt文件夹通过PyCharm打开

pyqt 打开eml文件 pyqt怎么打开_Qt_14


这里面有刚才通过Qt designer设计的简单UI页面test1.ui

pyqt 打开eml文件 pyqt怎么打开_windows_15


创建一个py文件,test1.py,并更换一下环境,换成刚才创建的Qt环境空间

pyqt 打开eml文件 pyqt怎么打开_qt_16


test1.ui导入进来

from PySide2.QtWidgets import QApplication, QMessageBox
from PySide2.QtUiTools import QUiLoader

class beyondyanyu:

    def __init__(self):
        # 从文件中加载UI定义
        # 从 UI 定义中动态 创建一个相应的窗口对象
        # 注意:里面的控件对象也成为窗口对象的属性了
        # 比如 self.ui.button , self.ui.textEdit
        self.ui = QUiLoader().load('test1.ui')#这里的参数为ui的路径,对这个ui文件创建对象ui
        self.ui.button.clicked.connect(self.yy)#为button绑定一个slot
        """
        对某个控件进行操作会产生一个signal,常通过slot来进行处理signal
        slot就是通过clicked.connect来绑定某个函数,这个函数用于处理signal
        """

    def yy(self):#处理clicked.connect这个signal的slot,其中slot操作放在了yy这个函数中进行执行
        print("已点击Button")


app = QApplication([])
beyondyanyu = beyondyanyu()#实例化对象
beyondyanyu.ui.show()#显示页面
app.exec_()#死循环,除非用户主动×掉

pyqt 打开eml文件 pyqt怎么打开_pyqt 打开eml文件_17


运行test1.py,点击button可以看到以及触发了yy函数中的操作

pyqt 打开eml文件 pyqt怎么打开_qt_18


这算了对Qt有了一个初步的认识,接下来我会结合Opencv和训练Unet网络来通过Qt设计UI界面,最终实现一个检测评级系统