PyQt5 – 主要类

  • Post category:Python

下面是针对PyQt5主要类的完整使用攻略及示例。

PyQt5 – 主要类

PyQt5是使用Python语言实现的Qt库的封装,其中主要类包括:

  • QWidget:所有用户界面元素的基类,它是所有PyQt5小部件的超类。
  • QLabel:文本和图像的显示类。
  • QPushButton:按钮类,可以触发一个动作或者重新绘制一个小部件。
  • QComboBox:下拉列表框类,用户可以从已定义的选项中选择一个选项。
  • QLineEdit:单行编辑框类,允许用户在一个行内输入和编辑一条文本。
  • QTextEdit:多行文本编辑框类,允许用户在多个行中输入、编辑和格式化文字。

使用步骤

  1. 导入必要的模块和类:
from PyQt5 import QtCore, QtGui, QtWidgets

其中,QtCore是PyQt5的核心模块,QtGui提供了用户界面相关的组件,QtWidgets则提供了可以用来创建窗口中的小部件的组件。

  1. 创建应用程序对象:
app = QtWidgets.QApplication([])

此处的[]表示命令行参数,也可以传入一个列表。

  1. 创建主窗口对象:
main_window = QtWidgets.QWidget()

这里的主窗口对象继承自QWidget类,它是所有用户界面元素的基类。

  1. 创建小部件:
label = QtWidgets.QLabel('Hello World!', main_window)
button = QtWidgets.QPushButton('点击按钮', main_window)

其中,第二个参数表示小部件的父对象,也就是该小部件在哪个窗口中显示。

  1. 自定义小部件的位置和大小:
label.move(50, 50)
button.move(50, 100)

这里使用的是move方法,可以指定小部件的位置。

  1. 设置窗口大小并显示:
main_window.setGeometry(200, 200, 300, 200)
main_window.show()

setGeometry方法的参数依次是窗口的左上角坐标和它的宽度和高度。

  1. 进入主循环:
app.exec_()

这个方法是Qt程序主循环的开始,并且用于监听Qt事件和信号的发送。

示例一

下面是一个使用QLabel的简单示例,在一个窗口中显示一张图片:

from PyQt5 import QtCore, QtGui, QtWidgets

app = QtWidgets.QApplication([])

main_window = QtWidgets.QWidget()

label = QtWidgets.QLabel(main_window)
pixmap = QtGui.QPixmap('/path/to/my/image')
label.setPixmap(pixmap)
label.resize(pixmap.width(), pixmap.height())

main_window.setGeometry(200, 200, pixmap.width(), pixmap.height())
main_window.show()

app.exec_()

在这个示例中,我们使用QPixmap来加载图片,然后使用setPixmap方法将图片设置为QLabel的显示内容。

示例二

下面是一个使用QPushButton和QMessageBox的示例,单击按钮会弹出一个消息框:

from PyQt5 import QtCore, QtGui, QtWidgets

app = QtWidgets.QApplication([])

main_window = QtWidgets.QWidget()

button = QtWidgets.QPushButton('点击这里', main_window)
button.move(50, 50)

@QtCore.pyqtSlot()
def on_button_clicked():
    QtWidgets.QMessageBox.information(main_window, '消息提示', '按钮被点击了!')

button.clicked.connect(on_button_clicked)

main_window.setGeometry(200, 200, 200, 200)
main_window.show()

app.exec_()

在这个示例中,我们使用了Qt的信号与槽机制来连接按钮的click信号和消息框的弹出操作。如果按钮被单击,就会进入on_button_clicked方法,在该方法中弹出消息框。

这就是关于PyQt5主要类的完整使用攻略,希望它能够帮助你更好地使用PyQt5来创建你的Qt应用程序。