Python GUI快速入门

B站影视 港台电影 2025-10-30 17:39 1

摘要:GUI是图形用户界面的意思,在Python中使用PyQT可以快速搭建自己的应用,使得自己的程序看上去更加高大上,学会GUI编程可以使得自己的软件有可视化的结果,更方便地参加“人工智能+”或其他创新创业大赛。

GUI是图形用户界面的意思,在Python中使用PyQT可以快速搭建自己的应用,使得自己的程序看上去更加高大上,学会GUI编程可以使得自己的软件有可视化的结果,更方便地参加“人工智能+”或其他创新创业大赛。

创建项目并添加虚拟环境设置:

在pycharm中,点击‘文件’->‘新建项目’,项目名称为“PyQtTest”,设置虚拟环境为conda下的cv环境,(可根据个人情况自行设置),如下图。

安装PyQT:

pip install pyqt6 -i https://pypi.tuna.tsinghua.edu.cn/simple --user

打开pychar,点击‘终端’,输入以下命令后按回车,等待安装完成。

继续安装QtDesigner:

pip install pyqt6-tools -i https://pypi.tuna.tsinghua.edu.cn/simple --user

其他常用方法:

在pychar中添加清华镜像源,点击pychar左侧的‘python软件包’图片,点击下面的齿轮图片,点击‘管理仓库’按钮,在仓库UTL中输入清华镜像源:https://pypi.tuna.tsinghua.edu.cn/simple/,点击确定即可。

点击‘文件’->‘设置’->‘python’->‘解释器’,点击上面的‘+’号,搜索框输入pyqt6和pyqt6-tools,就能安装相关的包。

使用外部工具:

点击PyCharm的‘文件’->‘设置’->‘工具’->‘外部工具’,打开外部工具界面,点‘+’号进入添加外部工具界面。在‘Name’处输入工具名称,这个名称可以随便取,只要自己清楚就行,我这里写的扩展工具名是Qt designer。

在python安装目录下的Lib\site-packages\PyQt6_tools文件夹里找到安装的designer.exe所在的路径(我这个pyqt是安装到cv环境下的,先找到我安装的cv环境根目录,找到anaconda3的根目录下的envs文件夹,打开下面的cv的环境,然后在搜索框里搜designer.exe,选中并右键单击后选择‘打开文件所在的位置’,就找到文件所在的路径)

选中此程序,右键单击,选择‘打开文件所在的位置’。

我的路径在:D:\Users\yangtaiyun\anaconda3\envs\cv\Lib\site-packages\qt6_applications\Qt\bin

将路径复制到‘程序’处,注意要包含designer.exe的文件名。

‘工作路径’处设置自己的工作路径,如D:\Users\yangtaiyun\Pycharm-professional-Projects\PyQtTest,qtdesigner生成的ui文件会默认保存在该路径。‘Arguments’不用设置,确定即可,如下图所示,设置好后点击‘确定’即可。

打开Qtdesiger:

代码框左边位置右键点击,选择‘外部工具’->’Qtdesigner’,就能打开QtDesigner的界面。

配置pyuic:

接下来添加pyuic,pyuic用于将qtdesigner生成的.ui文件转换成python可识别的.py文件。

打开‘文件’->‘设置’->‘扩展工具’点击‘+’号。

在‘名称’处输入pyuic。

在‘程序’处输入python.exe所在的路径和文件名。

(我的在cv环境下的python.exe,即D:\Users\yangtaiyun\anaconda3\envs\cv\python.exe)

在‘实参’处输入:

-m PyQt6.uic.pyuic -o $FileNameWithoutExtension$.py $FileName$

在‘工作目录’处输入:

$FileDir$

点击‘确定’,Qtdesiger就配置完毕,如下图所示。

这样生成的py文件就会和被转换的ui文件位于相同的文件夹下。

界面设计测试:

代码框左边位置右键点击,选择‘外部工具’->’Qt designer’,就能打开Qt Designer的界面,选择‘Main Window’,点击‘创建’。

点击‘文件’->‘保存’,将当前界面保存到我们刚创建的PyQtTest项目文件夹下,文件名设为QtTest.ui。

保存好后,回到PyCharm中,可以看到我们的PyQtTest项目下多了一个QtTest.ui文件,双击打开,里面是用代码的形式实现我刚才的界面操作,但是它是.ui文件,不是.py文件。

通过外部工具转换:

鼠标右键单击‘QtTest.ui’文件调出右键菜单,单击‘外部工具’->‘pyuic’,程序会调用pyuic,将ui文件转换为py文件,执行完成后就会在该项目中生成一个QtTest.py文件了,打开之后,里面就是将ui文件转换为py文件的代码。

写个主函数:

右键单击PyQtTest项目,选择‘新建’->‘python文件’,新建一个Python文件,文件名设置为‘main.py’,用这个主函数读取QtTest.py里面的内容并把它可视化,打开main.py文件输入如下代码:

from QtTest import Ui_MainWindowimport sysfrom PyQt6.QtWidgets import QApplication, QMainWindowclass CamShow(QMainWindow, Ui_MainWindow):def __init__(self, parent=None):super(CamShow, self).__init__(parent)self.setupUi(self)if __name__ =='__main__':app = QApplication(sys.argv)ui = CamShowui.showsys.exit(app.exec)

在窗口中右键单击,选择‘运行main’,弹出如下窗口中的框,表明PyQT和QtDesigner都已经安装成功了。

PyQt制作界面实战图片展示功能:

接下来,在main.py中添加逻辑功能代码实现简易软件的封面。

打开Qt Designer

现在Qt Designer中做相关的设计:

在Qt Designer中,点击‘窗体’菜单,点击‘预览’,可以查看预览效果。

在pycharm的主程序main.py中添加相关的逻辑代码实现上述功能:

from QtTest import Ui_mainWindowimport sysfrom PyQt6.QtWidgets import QApplication, QMainWindow, QFileDialog, QMessageBoxfrom PyQt6 import QtGuiclass CamShow(QMainWindow, Ui_mainWindow):def __init__(self, parent=None):super(CamShow, self).__init__(parent)self.setupUi(self)# 信号与槽self.OpenFileBtn.clicked.connect(self.loadImage)self.actionOpen.triggered.connect(self.loadImage)self.actionexit.triggered.connect(self.exit)self.actionabout.triggered.connect(self.about)def loadImage(self):# print("按钮被按下了")self.infolabel.setText("欢迎使用该软件,「图文版」按钮被按下了~")self.fname, _ = QFileDialog.getOpenFileName(self, caption='选择图片', directory='.', filter='图像文件(*.jpg, *.png)')print(self.fname)pix = QtGui.QPixmap(self.fname).scaled(self.ImageLabel.width, self.ImageLabel.height)self.ImageLabel.setPixmap(pix)def exit(self):sys.exit(app.exec)def about(self):self.infolabel.setText("欢迎使用该软件,帮助按钮被按下了~")QMessageBox.information(self, title='软件说明', text='该软件有xxx公司开发,软件版本为2.0')if __name__ =='__main__':app = QApplication(sys.argv)ui = CamShowui.showsys.exit(app.exec)

PyCharm中运行效果展示如下:

Python GUI本次学习完成,有疑问留言~[归正视频,归正运动能量站,运动科技小站]

来源:归正视频创作

相关推荐