19.QFileDialog 文件选择对话框

本文介绍如何使用PyQt库中的QFileDialog组件来创建一个简单的应用,该应用包含两个按钮,分别用于加载图片和文本文件。加载图片时,会显示在界面上的标签中;加载文本文件时,则会在文本编辑区域显示文件内容。通过此教程,读者可以学习到如何在PyQt应用中集成文件选择对话框,并处理所选文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 def initUI(self):
        self.setWindowTitle('QFileDialogDemo')
        self.setGeometry(500,500,300,200)

        button1 = QPushButton()
        button1.setText('加载图片')
        button1.clicked.connect(lambda :self.loadImg(label))
        label = QLabel('img')

        button2 = QPushButton('加载文本文件')
        button2.clicked.connect(lambda :self.loadText(contents))
        contents = QTextEdit()

        layout = QVBoxLayout()
        layout.addWidget(button1)
        layout.addWidget(label)
        layout.addWidget(button2)
        layout.addWidget(contents)
        self.setLayout(layout)

    def loadImg(self,label):
        fname,_ = QFileDialog.getOpenFileName(self,'打开文件','.','图像文件(*.jpg,*.png)')
        label.setPixmap(QPixmap(fname))

    def loadText(self, textEdit):
        dialog = QFileDialog()
        dialog.setFileMode(QFileDialog.AnyFile)
        dialog.setFilter(QDir.Files)
        if dialog.exec():
            fnames = dialog.selectedFiles()
            f = open(fnames[0],encoding='utf-8',mode='r')
            with f:
                data = f.read()
                textEdit.setText(data)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值