如何解决使用pyqt弹出消息提示框的问题

如何解决使用pyqt弹出消息提示框的问题

这篇文章给大家分享的是有关如何解决使用pyqt弹出消息提示框的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

安装 pyqt

PyQt5是python模块,可让您非常快速地构建GUI应用程序。通常将它与Tkinter进行比较,但有一些区别。主要的一项是开发GUI的速度。 PyQt带有一个称为Qt-Designer的惊人工具,该工具是一个拖放界面,可根据您构建的GUI自动为您生成代码。这样可以更快地构建美观的应用程序。另一个区别是Tkinter默认带有Python 3+,必须在其中安装PyQt。

开始使用 PyQt5 的第一步是安装它。为此,我们将需要使用 pip
执行以下命令来安装 PyQt5

$sudoapt-getinstallpython3-dev$sudoapt-getinstallpython3-pip$pip3installpyqt5$pip3installpyqt5-tools

安装遇到问题

No matching distribution found for PyQt5-Qt5>=5.15.2 (from pyqt5)

Could not find a version that satisfies the requirement PyQt5-Qt5>=5.15.2 (from pyqt5) (from versions: )
No matching distribution found for PyQt5-Qt5>=5.15.2 (from pyqt5)

这是由于 pip 工具没有更新导致的,执行以下命令:

$pip3install--upgradepip3$pip3install--upgradepyqt5$pip3install--upgradepyqt5-tools

还有 To avoid this problem you can invoke Python with '-m pip' instead of running pip directly. 问题

这是由于存在 python2pip 导致,使用 pip3 卸载 pip 即可,如下操作:

$python-mpipuninstallpip

Ubuntu 默认使用 Python2 更换默认配置为 Python3

1.查看当前ubuntu系统已经安装的python版本及当前使用的python版本

$python--version

2.设置update-alternativer 切换python版本

$update-alternatives--listpython

执行后显示:

update-alternatives: error: no alternatives for python #表示Python代替版本尚未安装

然后执行以下命令安装:

$update-alternatives--install/usr/bin/pythonpython/usr/bin/python2.71update-alternatives:using/usr/bin/python2.7toprovide/usr/bin/python(python)inautomode$update-alternatives--install/usr/bin/pythonpython/usr/bin/python3.62update-alternatives:using/usr/bin/python3.6toprovide/usr/bin/python(python)inautomode

查看默认版本

$python--version

上述命令中因为我们设置 /usr/bin/python3.6 设置的优先级为2 所以update-alternatives命令自己设置3.6为默认

再次显示Python代替版本信息

$update-alternatives--listpython

切换版本 update-alternatives --config python

$sudoupdate-alternatives--configpython

3.python3版本安装pip

$sudoapt-getinstallpython3-pip

安装完以后运行 pip3 -V 显示版本

升级 pip 版本

$pip3install--upgradepip

测试验证

只需要执行以下操作就能验证 pyqt5 是否正常安装配置了:

$python3>fromPyQt5importQtWidgets>quit()

创建一个基本的GUI应用

在成功安装了 pyqt5 模块后,创建一个简单的 GUI 测试一下是否正常。
参考 Linux 公社例子,具体代码如下:

fromPyQt5importQtWidgetsfromPyQt5.QtWidgetsimportQApplication,QMainWindow,QLabelimportsysdefmain():app=QApplication(sys.argv)win=QMainWindow()win.setGeometry(300,300,600,400)win.setWindowTitle("Linux公社www.linuxidc.com")label=QLabel(win)label.setText("<Ahref='www.linxuidc.com.com'>Linux公社</a>")label.move(280,150)label1=QLabel(win)label1.setText("www.linuxidc.com")label1.adjustSize();label1.move(260,180)win.show()sys.exit(app.exec_())main()#确保调用该函数

一定主要 Python 代码缩进要保持一致,不然会报错的.
执行结果如下:

各种样式的消息对话框示例

现在就将 pyqt5 中的各种消息对话框通过一个小示例展示一下,具体代码如下:

importsysfromPyQt5.QtCoreimport*fromPyQt5.QtGuiimport*fromPyQt5.QtWidgetsimport*classMyWindow(QWidget):def__init__(self,parent=None):super(MyWindow,self).__init__(parent)self.setWindowTitle("弹出式对话框例子")self.resize(400,200)self.btn1=QPushButton(self)self.btn1.setText("消息框")self.btn1.clicked.connect(self.msg1)layout=QVBoxLayout()self.btn2=QPushButton(self)self.btn2.setText("问答对话框")self.btn2.clicked.connect(self.msg2)self.btn3=QPushButton()self.btn3.setText("警告对话框")self.btn3.clicked.connect(self.msg3)self.btn4=QPushButton()self.btn4.setText("严重错误对话框")self.btn4.clicked.connect(self.msg4)self.btn5=QPushButton()self.btn5.setText("关于对话框")self.btn5.clicked.connect(self.msg5)layout.addWidget(self.btn1)layout.addWidget(self.btn2)layout.addWidget(self.btn3)layout.addWidget(self.btn4)layout.addWidget(self.btn5)self.setLayout(layout)defmsg1(self):#使用infomation信息框QMessageBox.information(self,"标题","消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)defmsg2(self):QMessageBox.question(self,"标题","问答消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)defmsg3(self):QMessageBox.warning(self,"标题","警告消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)defmsg4(self):QMessageBox.critical(self,"标题","严重错误消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes)defmsg5(self):QMessageBox.about(self,"标题","关于消息正文")if__name__=="__main__":app=QApplication(sys.argv)win=MyWindow()win.show()sys.exit(app.exec_())

效果如下:

消息对话框:

问答对话框:

警告对话框

严重错误对话框

关于对话框:

Python 程序打包

我们在通过自己的开发环境编写和测试好了界面程序,如果仅仅把我们编写好的执行 Python 脚本提供给对方,对方的 PC 环境下很可能没有我们的程序依赖环境,这时候我们最好把 Python 程序打包后再发给对方。

安装pyinstaller

pipinstallpyinstaller

准备好python文件, 这里可以使用刚刚我们用于测试的代码 demo.py

打包成可执行文件

终端输入:

pyinstaller-Fdemo.py

就可以生成可执行文件 demo 了:

在终端中输入 ./demo 运行:

常用参数:

-i 添加图标,后面紧跟图标路径,图标格式必须是.ico
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
pyinstaller -h 来查看参数

安装 pyinstaller 显示 command not found

pyinstaller 官网下载,https://github.com/pyinstaller/pyinstaller 下载到本地以后进行解压:

$tar-xjfxx.tar.bz2

解压完成后进入文件夹执行:

$pythonsetup.pyinstall

安装完成后就可以进入你的文件目录进行打包了。

感谢各位的阅读!关于“如何解决使用pyqt弹出消息提示框的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

发布于 2022-03-03 21:29:55
收藏
分享
海报
0 条评论
42
上一篇:如何使用springboot配置和占位符获取配置文件中的值 下一篇:HTML5的form标签怎么使用
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码