📜  qt 设计器消息框 python (1)

📅  最后修改于: 2023-12-03 15:04:44.325000             🧑  作者: Mango

使用Qt Designer和Python创建消息框

当我们需要向用户显示一些提示或警告信息时,消息框是非常好用的工具。 PyQt5 提供了一个简单的方法来创建不同类型的消息框,包括信息框、警告框和错误框。 在这篇文章中,我们将介绍如何使用 Python 和Qt Designer 创建一个信息框。

准备工作

在开始之前,您需要安装 PyQt5 包。 您可以使用 pip 来安装,输入以下命令来安装:

pip install PyQt5

您也需要一个Qt设计器。 您可以使用 Qt Creator 或 Qt Designer。 在这里,我们将使用 Qt Designer。

创建消息框

首先,我们将创建一个简单的图形用户界面(GUI),其中包含一个按钮。 单击按钮后将显示一个消息框。 在Qt Designer中创建一个简单的GUI,它应该如下所示:

![Qt Designer窗口](https://i.imgur.com/43pMiSh.png)

在主窗口中,添加一个按钮并将其重命名为“Show Message Box”。 单击按钮之后,将显示一个消息框。

将 UI 转换为 Python

Qt Designer 可以将UI转换为Python代码。 在Qt Designer中,选择“文件” -> “转换UI文件为.py文件” 。

保存生成的代码文件,例如 message_box.py 。

在 Python 中添加代码

我们现在已经准备好了Python代码,该代码将在单击按钮时创建一个消息框。

为了执行此操作,我们将添加以下代码:

from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox, QPushButton
from message_box import Ui_MainWindow
from sys import argv, exit

class MainWindow(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
        self.pushButton.clicked.connect(self.show_message_box)

    def show_message_box(self):
        msg_box = QMessageBox()
        msg_box.setIcon(QMessageBox.Information)
        msg_box.setText("Hello, World!")
        msg_box.setStandardButtons(QMessageBox.Ok)
        msg_box.exec_()

if __name__ == '__main__':
    app = QApplication(argv)
    main_window = MainWindow()
    main_window.show()
    exit(app.exec_())

让我们一行一行地解释:

  • 我们导入 QApplication、QMainWindow、QMessageBox 和 QPushButton 类,以及我们在Qt Designer中创建的类。
  • OurMainWindow 类继承自 QMainWindow 和 Ui_MainWindow 。我们把所述信号PushButton.clicked 到MainWindow.show_message_box 方法,这意味着当PushButt被单击时将启动此方法。
  • show_message_box 方法创建并显示一个消息框。 消息框的文本是“ Hello,World!” ,其中 setIcon() 方法将消息框设置为信息框, setStandardButtons() 方法,在消息框中设置一个 OK 按钮, exec_() 方法将显示消息框。
  • 当程序被启动时,我们创建一个 QApplication 实例,实例化 MainWindow ,显示窗口并开始事件循环。
运行代码

现在我们可以运行代码。运行以下命令:

python message_box.py

单击“ Show Message Box”按钮以显示消息框:

![消息框](https://i.imgur.com/p8Cbvbx.png)

这篇文章介绍了使用QPyyt5和 Python 创建一个简单的消息框。 我们在Qt Designer中创建了UI,然后在Python中使用UI代码创建消息框。 我们还了解了 QMessage Box类,并了解如何设置消息框的属性。