Add 03-12-03-01

QFileDialog-简介与创建
This commit is contained in:
muzing 2022-09-23 21:05:12 +08:00
parent 9aeb9be52f
commit 86a7398817

View File

@ -0,0 +1,50 @@
import sys
from PySide6 import QtWidgets
"""
QFileDialog 文件对话框
用户可以通过文件对话框浏览文件或目录常用于选择打开文件将当前文件保存到某处等场景
官方文档https://doc.qt.io/qtforpython/PySide6/QtWidgets/QFileDialog.html
继承自 QDialog
有两种构造函数简介版只可选地传入父控件与窗口标志完整版可以在创建时定义更多属性功能
.__init__(self, parent: QWidget, f: QtCore.Qt.WindowFlags)
.__init__(self, parent: Optional[QWidget] = None, caption: str = '', directory: str = '', filter: str = '')
"""
class MyWidget(QtWidgets.QWidget):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setWindowTitle("QFileDialog-简介")
self.dialog = QtWidgets.QFileDialog(self)
self.setup_dialog()
self.setup_ui()
def setup_dialog(self) -> None:
"""配置对话框属性功能"""
self.dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptOpen) # 打开模式
self.dialog.setFileMode(QtWidgets.QFileDialog.ExistingFiles) # 选择现有文件
self.dialog.setLabelText(QtWidgets.QFileDialog.Accept, "选择") # 为「接受」按键指定文本
self.dialog.setLabelText(QtWidgets.QFileDialog.Reject, "取消") # 为「拒绝」按键指定文本
def setup_ui(self) -> None:
"""设置界面"""
self.resize(800, 600)
browse_btn = QtWidgets.QPushButton("选择文件", self)
browse_btn.move(150, 200)
browse_btn.clicked.connect(self.dialog.open) # type: ignore
info_le = QtWidgets.QLineEdit(self)
info_le.move(150, 250)
info_le.setMinimumWidth(600)
self.dialog.fileSelected.connect(lambda path: info_le.setText(path)) # type: ignore
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
window = MyWidget()
window.show()
sys.exit(app.exec())