PyQt特殊对话框
对话框基类:QDialog
- 对话框基本用法:
- 模态窗口:
- 当窗口设置为模态窗口时,不能对其父级别的窗口进行操作。
- QTdesigner里有控件可以勾选
- Func:
QtWidgets.Dialog.setModal(True)
[ True | False ]
- 窗口执行 exec:
- 窗口执行是QDialog的方法
- Func:
QtWidgets.Dialog.exec()
- exec() 通常与 show() 方法进行比较,show相当于是创建一个新的线程,不会阻塞当前对话函数的运行,而exec()则会阻塞,需要等待对话框完成执行后,才会结束函数。
- 模态窗口:
- 一些特殊的对话框:
- 消息框:QMessage
- 调色板:QColorDialog
- 文件管理:QFileDialog
消息窗口:QMessagebox
-
基本消息框的类型:(消息窗口可以分为下述五种)
- QMessageBox.information(self, “title”, “text”, 按钮宏)
- QMessageBox.question(self, “title”, “text”, 按钮宏)
- QMessageBox.warning(self, “title”, “text”, 按钮宏)
- QMessageBox.critical(self, “title”, “text”, 按钮宏)
- QMessageBox.about(self, “title”, “text”) [ 注意,about 窗口没有按钮配置,但会默认有个Ok的按钮]
- 基本消息框依赖于某个父窗口QWidget,因此需要传入父窗口参数。 也就是self的位置是一个QWidget类或者子类
-
自定义消息框类型
- Func:
box = QMessage(QMessage.Question, "title", "text")
- Func:
-
按钮宏:
- 按钮宏的具体类型可以参考:https://www.cnblogs.com/zhoug2020/p/10094855.html
调色板:QColorDialog
- 打开调色板:
color = QtWidgets.QColorDialog.getColor()
打开默认调色板颜色为白色color = QtWidgets.QColorDialog.getColor(Qt.blue)
打开默认调色板,并设置默认参数为蓝色 [ Qt.Color ]
- 调色板返回值常用方法 <class ‘PyQt5.QtGui.QColor’>
ret = color.isValid()
返回颜色是否有效, 布尔。只有按下调色板的OK按钮,这个调色才有效返回True, 否则返回FalsecolorStr = color.name()
返回颜色名字,字符串。 通常是 #ffffff 的形式。
文件管理器:QFileDialog
- 基本介绍:
- 文件管理类型的对话框是专门用于加载文件,或保存文件的对话框。
- 保存文件对话框:
-
(file_path, file_type) = QFileDialog.getSaveFileName(self, “title”, “file path name”, “file type”)
-
参数介绍:
-
self 说明文件管理器依附父级窗口
-
title 字符串类型,是文件管理界面
-
file path name 字符串类型, 是默认保存的文件路径
- 比如打开当前路径保存文件名为test.txt:
".\\test.txt"
- 比如打开当前路径保存文件名为test.txt:
-
file type 字符串类型, 表示可选择保存文件的类型,多个type用分号隔开,一般来说具有固定模板
- 比如可选类型为txt和全部类型:
"Txt files(*.txt);;all files(*.*)"
- 比如可选类型为txt和全部类型:
-
返回值介绍:返回是个元组,有两个参数
-
file_path:字符串,真实的文件路径名,可以通过open方法进行读写文件操作
-
file_type: 字符串,表示文件的类型
-