PyQt5(02)添加组件:图标按钮

Posted corecoder

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PyQt5(02)添加组件:图标按钮相关的知识,希望对你有一定的参考价值。

环境说明:

平台:WIN10(教育版)

环境:Anaconda5.2(Python3.6.6)

IDE:Pacharm2018.2.1(专业版)

PyQt5:5.11.2

任务目标一:添加图标组件

任务目标二:添加按钮组件,并通过点击按钮链接退出功能

 

代码实现:添加图标组件

 

 1 # !/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 import sys
 5 from PyQt5.QtWidgets import QApplication, QWidget
 6 from PyQt5.QtGui import QIcon
 7 
 8 
 9 class MyGui(QWidget):
10 
11     def __init__(self):
12 
13         super().__init__()
14 
15     def ui(self):
16 
17         self.setGeometry(300, 300, 300, 220)
18         self.setWindowTitle("Hello, PyQt5!")
19         self.setWindowIcon(QIcon(icon.png))
20 
21         self.show()
22 
23 
24 if __name__ == __main__:
25 
26     app = QApplication(sys.argv)
27     win = MyGui()
28     win.ui()
29     sys.exit(app.exec_())

 新行解释

6 from PyQt5.QtGui import QIcon

  添加图标组件需要导入 QtGui 模块中的 QIcon 类

19 self.setWindowIcon(QIcon(icon.png))

  添加图标组件,其中 icon.png 是图标文件

 

任务目标二:添加按钮组件,为按钮设置悬浮提示框,

并设置按钮的功能为退出程序

 

 1 # !/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 import sys
 5 from PyQt5.QtWidgets import QApplication, QWidget,  6     QPushButton
 7 from PyQt5.QtGui import QIcon
 8 from PyQt5.QtCore import QCoreApplication
 9 
10 
11 class MyGui(QWidget):
12 
13     def __init__(self):
14 
15         super().__init__()
16 
17     def ui(self):
18 
19         self.setGeometry(300, 300, 300, 220)
20         self.setWindowTitle("Hello, PyQt5!")
21         self.setWindowIcon(QIcon(icon.png))
22         
23         self.btn = QPushButton(Quit, self)
24         self.btn.move(100, 100)
25         self.btn.resize(70, 30)
26         self.btn.setToolTip(Press to <b>quit</b>)
27         self.btn.clicked.connect(QCoreApplication.instance().quit)
28 
29         self.show()
30 
31 
32 if __name__ == __main__:
33 
34     app = QApplication(sys.argv)
35     win = MyGui()
36     win.ui()
37     sys.exit(app.exec_())

 新行解释

5-6 from PyQt5.QtWidgets import QPushButton

添加按钮组件需要导入 QtWidgets 模块的 QPushButton 类

8 from PyQt5.QtCore import QCoreApplication

 导入必要的类: QCoreApplication 

23 self.btn = QPushButton(Quit, self)

添加按钮组件,第一个参数 Quit 为在按钮上显示的字符串,第二个参数 self 为承载按钮的对象

24 self.btn.move(100, 100)
25 self.btn.resize(70, 30)

同 QWidget 对象的 move 和 resize 方法

26 self.btn.setToolTip(Press to <b>quit</b>)

 为按钮组件设置悬浮提示框,参数  Press to <b>quit</b> 为悬浮提示框中显示的内容,

其中可以通过 <b></b> 等标签调整文本格式

27 self.btn.clicked.connect(QCoreApplication.instance().quit)

 设置按钮的功能为退出程序,

需要将按钮的 clicked 这个事件 connect 到 QCoreApplication.instance().quit 

其中 QCoreApplication.instance().quit 为内置的程序退出的功能函数(方法),

于是按钮就可以实现退出程序的功能了

调用 QCoreApplication.instance().quit 需要导入 QtCore 模块的 QCoreApplication 

 

以上是关于PyQt5(02)添加组件:图标按钮的主要内容,如果未能解决你的问题,请参考以下文章

PyQt5(06)添加组件:按钮,并设置位置和大小

PyQt5数据库开发3 6 QSqlQuery完整实操案例图文详解

使用导航组件处理工具栏后退按钮

PyQt5 组件之QToolBar

如何检测在 PyQt5 中按下了动态添加的按钮之一? [复制]

如何在 PyQt5 中制作自定义 QPushButton?