PySide(PyQt)的QMessageBox

QMessageBox 是 PySide6 中用于显示各种消息框的类,它能够在图形用户界面中弹出一个对话框,用于向用户展示信息、警告或错误,并接收用户的响应。它通常用于与用户进行简单的交互或提示操作的结果。

主要功能和特点:

  1. 显示不同类型的消息

    • QMessageBox 可以显示多种类型的消息,包括信息提示、警告、错误等,每种类型有对应的图标和默认按钮配置。
  2. 按钮和响应

    • 消息框可以包含多个按钮,如确定、取消等,每个按钮可以触发不同的响应。用户可以通过点击按钮来选择操作。
  3. 使用简单

    • QMessageBox 的使用非常简单,通常只需设置消息文本和按钮配置即可,无需复杂的布局或事件处理。
  4. 标准按钮和自定义按钮

    • 提供了一组标准按钮(如确定、取消、关闭),也支持自定义按钮文本和功能。
  5. 灵活的定制化

    • 可以定制消息框的图标、按钮显示、默认按钮等,以适应不同的提示需求和用户体验。

常用方法和属性:

  • 静态方法

    • QMessageBox.about(): 显示关于信息。
    • QMessageBox.critical(): 显示严重错误消息。
    • QMessageBox.information(): 显示一般信息消息。
    • QMessageBox.question(): 显示提问消息,通常有确认和取消按钮。
    • QMessageBox.warning(): 显示警告消息。
  • 属性和方法

    • setText(): 设置消息框的文本内容。
    • setInformativeText(): 设置详细信息文本,通常用于提供更详细的说明或帮助。
    • setStandardButtons(): 设置标准按钮集合。
    • setDefaultButton(): 设置默认按钮,按下回车键时触发的按钮。
    • exec_(): 显示消息框并等待用户响应,返回用户点击的按钮。
    • clickedButton(): 返回用户点击的按钮对象。

示例代码解释:

# 成功创建文件夹时的提示
QMessageBox.information(self, "成功", f"已成功创建文件夹:\n{folder_path}")

# 输入无效路径时的警告
QMessageBox.warning(self, "错误", "请输入有效的文件夹路径!")

# 创建文件夹时发生错误的提示
QMessageBox.critical(self, "错误", f"创建文件夹时发生错误:\n{str(e)}")

这些方法展示了如何利用 QMessageBox 提供不同类型的消息提示,以便用户了解操作的成功与否或者需要采取的进一步步骤。

总之,QMessageBox 是一个非常有用的工具类,能够帮助开发者在用户界面中有效地处理信息提示和用户交互,提升应用程序的用户体验。

import os
import time

from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QVBoxLayout, QWidget, QLineEdit, QMessageBox


class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setWindowTitle("创建文件夹示例")
        self.setGeometry(100, 100, 400, 200)

        # 创建主 widget 和布局
        main_widget = QWidget()
        self.setCentralWidget(main_widget)
        layout = QVBoxLayout(main_widget)

        # 输入路径的文本框和按钮
        self.path_input = QLineEdit()
        self.path_input.setPlaceholderText("输入文件夹路径")
        layout.addWidget(self.path_input)

        self.create_folder_button = QPushButton("创建文件夹")
        self.create_folder_button.clicked.connect(self.create_folder)
        layout.addWidget(self.create_folder_button)

    def create_folder(self):
        folder_path = self.path_input.text().strip()

        if not folder_path:
            QMessageBox.warning(self, "错误", "请输入有效的文件夹路径!")
            return

        # 检查路径是否存在,如果不存在则创建
        now = time.localtime()
        time_str = time.strftime("%Y%m%d_%H%M%S", now)
        project_path = f'../PROJECT/{time_str}'
        print(project_path)
        try:
            os.makedirs(project_path, exist_ok=True)
            QMessageBox.information(self, "成功", f"已成功创建文件夹:\n{folder_path}")
        except Exception as e:
            QMessageBox.critical(self, "错误", f"创建文件夹时发生错误:\n{str(e)}")


if __name__ == "__main__":
    app = QApplication([])
    window = MainWindow()
    window.show()
    app.exec()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深蓝海拓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值