这篇文章给大家分享的是有关如何解决使用pyqt弹出消息提示框的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
PyQt5是python模块,可让您非常快速地构建GUI应用程序。通常将它与Tkinter进行比较,但有一些区别。主要的一项是开发GUI的速度。 PyQt带有一个称为Qt-Designer的惊人工具,该工具是一个拖放界面,可根据您构建的GUI自动为您生成代码。这样可以更快地构建美观的应用程序。另一个区别是Tkinter默认带有Python 3+,必须在其中安装PyQt。
开始使用 PyQt5
的第一步是安装它。为此,我们将需要使用 pip
。
执行以下命令来安装 PyQt5
。
$ sudo apt-get install python3-dev $ sudo apt-get install python3-pip $ pip3 install pyqt5 $ pip3 install pyqt5-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
工具没有更新导致的,执行以下命令:
$ pip3 install --upgrade pip3 $ pip3 install --upgrade pyqt5 $ pip3 install --upgrade pyqt5-tools
这是由于存在 python2
的 pip
导致,使用 pip3
卸载 pip
即可,如下操作:
$ python -m pip uninstall pip
1.查看当前ubuntu系统已经安装的python版本及当前使用的python版本
$ python --version
2.设置update-alternativer 切换python版本
$ update-alternatives --list python
执行后显示:
update-alternatives: error: no alternatives for python #表示Python代替版本尚未安装
然后执行以下命令安装:
$ update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1 update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in auto mode $ update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2 update-alternatives: using /usr/bin/python3.6 to provide /usr/bin/python (python) in auto mode
查看默认版本
$ python --version
上述命令中因为我们设置 /usr/bin/python3.6 设置的优先级为2 所以update-alternatives命令自己设置3.6为默认
再次显示Python代替版本信息
$ update-alternatives --list python
切换版本 update-alternatives --config python
$ sudo update-alternatives --config python
3.python3版本安装pip
$ sudo apt-get install python3-pip
安装完以后运行 pip3 -V
显示版本
升级 pip
版本
$ pip3 install --upgrade pip
只需要执行以下操作就能验证 pyqt5
是否正常安装配置了:
$ python3 > from PyQt5 import QtWidgets > quit()
在成功安装了 pyqt5
模块后,创建一个简单的 GUI
测试一下是否正常。
参考 Linux 公社例子,具体代码如下:
from PyQt5 import QtWidgets from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel import sys def main(): app = QApplication(sys.argv) win = QMainWindow() win.setGeometry(300,300,600,400) win.setWindowTitle("Linux公社www.linuxidc.com") label = QLabel(win) label.setText("<A href='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 中的各种消息对话框通过一个小示例展示一下,具体代码如下:
import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class MyWindow(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) def msg1(self): #使用infomation信息框 QMessageBox.information(self,"标题","消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg2(self): QMessageBox.question(self,"标题","问答消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg3(self): QMessageBox.warning(self,"标题","警告消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg4(self): QMessageBox.critical(self,"标题","严重错误消息正文",QMessageBox.Yes|QMessageBox.No,QMessageBox.Yes) def msg5(self): QMessageBox.about(self,"标题","关于消息正文") if __name__=="__main__": app=QApplication(sys.argv) win=MyWindow() win.show() sys.exit(app.exec_())
效果如下:
消息对话框:
问答对话框:
警告对话框
严重错误对话框
关于对话框:
我们在通过自己的开发环境编写和测试好了界面程序,如果仅仅把我们编写好的执行 Python 脚本提供给对方,对方的 PC 环境下很可能没有我们的程序依赖环境,这时候我们最好把 Python 程序打包后再发给对方。
安装pyinstaller
pip install pyinstaller
准备好python文件, 这里可以使用刚刚我们用于测试的代码 demo.py
打包成可执行文件
终端输入:
pyinstaller -F demo.py
就可以生成可执行文件 demo
了:
在终端中输入 ./demo
运行:
常用参数:
-i 添加图标,后面紧跟图标路径,图标格式必须是.ico
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
pyinstaller -h 来查看参数
到 pyinstaller
官网下载,https://github.com/pyinstaller/pyinstaller
下载到本地以后进行解压:
$ tar -xjf xx.tar.bz2
解压完成后进入文件夹执行:
$ python setup.py install
安装完成后就可以进入你的文件目录进行打包了。
感谢各位的阅读!关于“如何解决使用pyqt弹出消息提示框的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。