原文: https://pythonspot.com/pyqt5-buttons/

PyQt5 支持使用QPushButton类的按钮。 此类在PyQt5.QtWidgets组中。 可以通过调用构造函数QPushButton并将其文本显示为参数来创建按钮。

简介

要将按钮用于 PyQt5 应用程序,我们需要更新导入行:

  1. from PyQt5.QtWidgets import QApplication, QWidget, QPushButton
  2. from PyQt5.QtCore import pyqtSlot

initUI()方法中,添加以下代码行:

  1. button = QPushButton('PyQt5 button', self)
  2. button.setToolTip('This is an example button')
  3. button.move(100,70)

QPushButton创建小部件,第一个参数是按钮上的文本。 当用户将鼠标指向按钮时,setToolTip方法显示消息。 最后,将按钮移动到坐标x = 100y = 70。 我们需要为按钮单击创建一种方法:

  1. @pyqtSlot()
  2. def on_click(self):
  3. print('PyQt5 button click')

使用以下命令将连接方法添加到单击:

  1. button.clicked.connect(self.on_click)

最终 PyQt5 按钮代码:

  1. import sys
  2. from PyQt5.QtWidgets import QApplication, QWidget, QPushButton
  3. from PyQt5.QtGui import QIcon
  4. from PyQt5.QtCore import pyqtSlot
  5. class App(QWidget):
  6. def __init__(self):
  7. super().__init__()
  8. self.title = 'PyQt5 button - pythonspot.com'
  9. self.left = 10
  10. self.top = 10
  11. self.width = 320
  12. self.height = 200
  13. self.initUI()
  14. def initUI(self):
  15. self.setWindowTitle(self.title)
  16. self.setGeometry(self.left, self.top, self.width, self.height)
  17. button = QPushButton('PyQt5 button', self)
  18. button.setToolTip('This is an example button')
  19. button.move(100,70)
  20. button.clicked.connect(self.on_click)
  21. self.show()
  22. @pyqtSlot()
  23. def on_click(self):
  24. print('PyQt5 button click')
  25. if __name__ == '__main__':
  26. app = QApplication(sys.argv)
  27. ex = App()
  28. sys.exit(app.exec_())

PyQt5 按钮 - 图1

上面的 PyQt5 按钮示例的屏幕截图。

下载 PyQT5 示例