QFileDialog----构造函数

1、QFileDialog----构造函数:通过构造函数直接构造文件选择对话框需要分开,通过各个方法单独设置某些操作。(例如设置文件模式、设置名称过滤器)

from PyQt5.Qt import *

class Window(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("QFileDialog----构造函数的学习")
        self.resize(500, 500)
        self.setup_ui()

    def setup_ui(self):
        btn = QPushButton(self)
        btn.move(200, 200)
        btn.setText("选择文件")
        def test():
            fd = QFileDialog(self, "选择文件", "./", "All(*.*);; Images(*.jpg *.bmp);;python(*.py)")
            fd.fileSelected.connect(lambda file: print(file))
            print("xxx")
            fd.show()

        btn.clicked.connect(test)

if __name__ == "__main__":
    import sys
    app = QApplication(sys.argv)
    window = Window()
    window.resize(500, 500)
    window.show()

    sys.exit(app.exec_())

2、设置打开以及保存文件:通过接受模式设置:不设置模式的情况下默认就是打开文件。

        def test():
            fd = QFileDialog(self, "选择文件", "./", "All(*.*);; Images(*.jpg *.bmp);;python(*.py)")

            fd.fileSelected.connect(lambda file: print(file))
            fd.setAcceptMode(QFileDialog.AcceptSave)
            print("xxx")
            fd.show()

        btn.clicked.connect(test)

保存文件过程中需要手动选择文件后缀名,如果不想选择后缀名,可以设置默认的后缀名。

        def test():
            fd = QFileDialog(self, "选择文件", "./", "All(*.*);; Images(*.jpg *.bmp);;python(*.py)")

            fd.fileSelected.connect(lambda file: print(file))
            fd.setAcceptMode(QFileDialog.AcceptSave)
            fd.setDefaultSuffix("txt")
            print("xxx")
            fd.show()

设置文件模式:切换选择文件还是选择文件夹:

        def test():
            fd = QFileDialog(self, "选择文件", "./", "All(*.*);; Images(*.jpg *.bmp);;python(*.py)")

            fd.fileSelected.connect(lambda file: print(file))
            fd.setFileMode(QFileDialog.Directory)
            print("xxx")
            fd.show()

设置名称过滤器:(过滤图片、文本等) 

fd.setNameFilter("Img(*.jpg *.png)")

将每个字符串放在一个列表的元素中:,是列表元素的分割

            #fd.setNameFilter("Img(*.jpg *.png)")
            fd.setNameFilters(["All(*.*)", "Images(*.jpg *.bmp)", "python(*.py)"])

显示信息的详细程度:(显示详细信息在win10系统不灵光)

 设置指定角色的标签名:

 

 文件名、打开、取消等文本内容都可更改。

            fd.setLabelText(QFileDialog.FileName, "顺哥的文件")
            fd.setLabelText(QFileDialog.Accept, "顺哥的接受")
            fd.setLabelText(QFileDialog.Reject, "顺哥的拒绝")
            # 文件的类型,只在保存文件对话框,有个文件类型
            QFileDialog.FileType

 打开对话框:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

。七十二。

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

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

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

打赏作者

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

抵扣说明:

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

余额充值