PySide6-QWidget-QDialog


QDialog —— 对话框基类(弹出窗口的核心)

导入from PySide6.QtWidgets import QDialog
*QDialog 是所有弹出窗口(如消息提示、文件选择、设置面板)的基础。它最大的特点是**模态(Modal)*阻塞功能:调用 exec() 后,父窗口会被冻结,直到用户操作完对话框并关闭它。


一、 QDialog 对象的构造与基础属性


二、 对话框的生命周期与返回值(核心机制)


三、 QDialogButtonBox —— 标准对话框按钮盒

在实际开发中,几乎不会手动去创建“确定”、“取消”按钮并绑定 accept,Qt 官方提供了标准组件 QDialogButtonBox 来自动管理这些平台统一的按钮。


四、 QMessageBox —— 标准系统消息框

这是最常用到的 QDialog 子类,用于向用户展示各种信息、警告、错误和询问。

4.1 静态简便方法(一行代码调用)

不必实例化 QMessageBox,直接使用类静态方法弹窗。

4.2 面向对象的用法(极细化控制)

如果静态方法无法满足你的定制需求(比如需要加详细文本、自定义图标或按钮文字),需要实例化 QMessageBox


五、 QFileDialog —— 文件与目录选择

用于让用户选择打开、保存文件或选择目录。

5.1 最常用静态方法

5.2 面向对象用法(高级定制)

当你需要预设文件名、或者配置对话框的显示选项时,可以实例化 QFileDialog


六、 QInputDialog —— 便捷输入对话框

当你不想要复杂界面,仅仅需要让用户输入一个“字符串”、“整数”、“浮点数”或者“下拉选择一项”时,这是最快捷的方法。


七、 QDialog 家族的高级事件重写


八、 QDialog 核心机制隐藏细节补充


九、 QDialogButtonBox 高级交互扩展


十、 QMessageBox 自定义按钮与信号扩展


十一、 QFileDialog 高级过滤与视图扩展


十二、 QInputDialog 面向对象用法(高级控制)

除了静态方法 getInt/getText,直接实例化 QInputDialog 可以让你彻底控制对话框的 UI。


PySide6-QWidget-QDialog
QDialog —— 对话框基类(弹出窗口的核心)
四、 QMessageBox —— 标准系统消息框
五、 QFileDialog —— 文件与目录选择