pycharm+pyqt5快速入门(环境配置、UI界面设计、事件触发)

    xiaoxiao2022-07-07  255

    PyQt5环境配置   首先,默认电脑已经安装好python3.6和pycharm。 安装模块:   进行PyQt5开发之前需要安装pywin32、PyQt5、PyQt5-tools模块,可以使用命令行 pip install PyQt5、pip install PyQt5-tools和pip install pywin32安装,也可以直接在pycharm软件中File—Settings—Project:*—Project Interpreter—‘+’进行安装。安装完后使用如下代码进行测试,如有报错考虑升级相应的模块。

    import sys from PyQt5 import QtWidgets app = QtWidgets.QApplication(sys.argv) widget = QtWidgets.QWidget() #声明窗口 widget.resize(500,500) #设置窗口大小 widget.setWindowTitle("显示一个窗口") widget.show() #显示窗口 sys.exit(app.exec_()) #点击x关闭窗口

    配置PyQt5到Pycharm   使用Pyqt5开发UI,有两种方式,一种是直接输入python代码创建UI,如label、text、button等,并需要通过代码来调整位置、大小等信息;另一种是通过Pyqt5-tools模块中的QtDesigner来设计UI,也就是通过Qt中拖拽相应的UI模块来设计UI界面,然后再通过将保存好的.ui文件导入工程转换为.py文件供python程序调用,显然第二种方式更加简单。   以下是将QtDesigner“放入”pycharm中和将“.ui”转为“.py”的软件配置。   以上图片中的:    Name:QtDesigner 软件名,自定义即可    Program:安装pyqt5_tools模块的路径下的designer     C:\Users\ming\AppData\Local\Programs\Python\Python36\Lib\site-     packages\pyqt5_tools\designer.exe    Working directory:$ProjectFileDir$    Name:PyUIC    Program:安装python的路径    C:\Users\ming\AppData\Local\Programs\Python\Python36\python.exe    Arguments:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py Working directory:$ProjectFileDir$    以上便是环境的配置。检验配置是否完成,可以查看Tools-External Tools-*是否多出了刚才配置的两个工具。单击QtDesigner可以直接打开该软件,而PyUIC则需要针对.ui文件才能使用。 UI界面设计   对UI界面的设计,不讨论对UI的美化,只介绍使用。根据前面所言的两种PyQt5的ui设计方式,这里只讨论第二种,实际上第二种也包括了第一种。通过Tools-External Tools-QtDesigner打开软件,界面如下:   选择Main Window新建ui文件,并拖拽相应的模块,如图:(具体的使用和Qt软件类似)。新建完成后,保存到当前python工程目录下,命名为just.ui。   注意:这里新建的ui文件也可用Qt软件打开,即通过Qt直接设计后只将qt工程文件中的.ui文件放到python中使用;设计好的.ui文件还可以通过Designer再次打开并修改。   生成的just.ui文件无法在python中直接调用需要通过PyUIC转化为.py文件。右键单击just.ui文件,操作如图,即可生成just.py文件,该文件仅仅是ui文件,包括各个ui模块的位置、大小等信息。这种方式可以将逻辑层和UI层分成两块进行程序开发。   just.py文件部分内容如下: 程序运行   界面设计完成后,just.py是无法运行的。 方法1 最简单的方式是,直接在生成的 just.py文件末尾加上如下程序段即可。

    if __name__=="__main__": import sys app=QtWidgets.QApplication(sys.argv) widget=QtWidgets.QWidget() ui=Ui_Dialog() #Ui_Dialog为通过ui生成的just.py文件中的类名称 ui.setupUi(widget) widget.show() #显示窗口 sys.exit(app.exec_())

    方法2 再新建一个python文件demo.py代码如下,再调用生成的just.py文件。

    import sys import just from PyQt5.QtWidgets import QApplication,QMainWindow,QPushButton if __name__ =='__main__': app=QApplication(sys.argv) #声明应用程序 MainWindow=QMainWindow() #声明窗口 ui=just.Ui_Dialog() #声明UI对话框,即对应的UI的python文件 ui.setupUi(MainWindow) #将UI对话框对应声明的窗口 MainWindow.show() sys.exit(app.exec_()) #当点击窗口的x时,退出程序

    方法3 也可以新建一个类使用继承的方式。

    import sys from just import Ui_Dialog from PyQt5 import QtWidgets class justwindow(QtWidgets.QWidget, Ui_Dialog): def __init__(self): super(justwindow, self).__init__() #初始化父类 self.setupUi(self) if __name__=="__main__": app=QtWidgets.QApplication(sys.argv) justshow=justwindow() justshow.show() sys.exit(app.exec_())

    事件触发   和设计UI界面一样,也可以采用designer进行简单的交互设计,如,按下按钮的操作显示某个模块或者添加文字等。   具体可参考如下两个链接(比较简单易懂):   使用pycharm+pyqt5 控件事件触发:link   包括使用pycharm+pyqt5 触发自定义方法:link

    最新回复(0)