Python创建一个GUI(PyQt5)选择文件的界面获取文件路径

我们在利用Python进行创建文件时经常会用到一些文件路径,我们可以创建一个选择文件路径GUI(PyQt5)界面,然后我们就可以获取文件的路径,我们以后就可以直接拿来用!!

如下视频演示

请添加图片描述

程序逻辑

1、点击【选择路径可以选择文件】

2、【确定(开始执行)】这个按钮没有绑定函数,大家可以根据自己的需求绑定函数

这样一来我们就可以获取文件的路径,并且可以传递给其他的函数内,并对该文件进行处理

完整版代码:

from PyQt5.QtWidgets import QApplication, QLabel, QPushButton, QLineEdit, QMainWindow, QFileDialog
import sys


class PathSelector(QMainWindow):
    def __init__(self):
        super().__init__()
        self.title = "路径选择"
        self.width = 500
        self.height = 300
        self.initUI()
        self.filePaths = []


    def initUI(self):
        # 设置窗口属性
        self.setWindowTitle(self.title)
        self.setGeometry(100, 100, self.width, self.height)

        # 标签组件
        self.label = QLabel(self)
        self.label.setText("选择文件:")
        self.label.move(50, 80)

        # 输入框控件
        self.entry_text = QLineEdit(self)
        self.entry_text.setFixedSize(250, 30)
        self.entry_text.move(150, 80)

        self.entry_text.setReadOnly(True)

        # 选择路径按钮
        self.button = QPushButton(self)
        self.button.setText('选择路径')
        self.button.move(400, 80)

        self.button.clicked.connect(self.get_path)

        # 确定按钮
        self.submit_button = QPushButton(self)
        self.submit_button.setText('确定(开始执行)')
        self.submit_button.move(155, 150)
        self.submit_button.clicked.connect(self.processing_data)
        self.show()

    # 获取文件路径
    def get_path(self):
        path1, _ = QFileDialog.getOpenFileName(self, "请选择文件", "", "All Files (*);;Text Files (*.txt)")
        self.entry_text.setText(path1)
        self.filePaths.append(path1)
        # print(self.filePaths)

    def processing_data(self):
        file_name = self.filePaths[0]
        print(file_name)
        '''
        
        这里就是你刚刚获取的文件的处理函数,点击【确定】按钮就会开始执行
        
        '''
        pass


if __name__ == "__main__":
    app = QApplication(sys.argv)
    ex = PathSelector()

    sys.exit(app.exec_())

希望对大家有帮助

致力于办公自动化的小小程序员一枚#

都看到这了,关注+点赞+收藏=不迷路!!

如果你想知道更多关于Python办公自动化的知识各位大佬给个关注吧!

  • 12
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
【资源说明】 基于PyQt5(GUI界面)目标检测的行人检测并统计python源码+模型+项目说明.zip 检测 行人检测分为两部分,一部分是直接调用摄像头进行检测,另一种是从本地读入视频文件,对视频文件进行检测,运行predictUI.py即可打开PyQt5编写的UI界面,点击开始即进行摄像头的实时检测,点击视频检测即从文件读入视频进行检测 ## 统计 当检测选择是实时检测时,每隔5分钟会保存一次行人数量数据,数据保存至dayLogs中,当在UI界面选择统计后,可以根据选择的统计方式,从dayLogs文件夹中读出数据进行统计 # 演示 ## 检测演示 直接运行并根据UI界面提示进行演示即可 ## 统计演示 当需要进行统计功能演示时,但又没有足够的数据时,可以借助fakeData.py进行伪数据的生成,以便完成数据的统计功能展示 ## 合成视频 如果需要将视频内容检测并重新合成视频可以通过后面的步骤进行 1、在videoDetection.py中设置path变量并运行,并新建一个名为videos的文件夹(也可以在代码中改成其他路径),检测后的结果将以图片的形式存储在这个文件夹中 2、在img_to_video.py中设置存放图片的文件路径,图像大小,视频帧率后运行,合成后的视频将保存至videos文件夹下(也可以根据需要修改路径) 3、如果想要保存原视频的声音,可以使用video2audio.py将原视频的音频保存下来,可以使用视频剪辑软件将img_to_video生成的视频和音频拼接在一起 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
### 回答1: 使用 PyQt5 嵌入另一个 exe 的 GUI 界面可以使用 QProcess 类。QProcess 类可以用来启动和控制外部进程,并且可以通过信号和槽来获取进程的输出和错误信息。 具体实现方法如下: 1. 创建一个 QProcess 对象 2. 设置要启动的 exe 程序的路径 3. 启动进程 4. 在进程启动后,使用信号和槽来获取进程的输出和错误信息 5. 使用 QProcess 对象的 finished() 信号来检测进程是否结束 详细实现步骤可以参考 PyQt5 官方文档中关于 QProcess 类的说明。 ### 回答2: 在PyQt5中实现嵌入另一个exe的GUI界面可以通过使用QAxContainer模块来实现。QAxContainer模块允许我们在PyQt5应用程序中嵌入并控制外部程序。 首先,需要在Python脚本中导入所需的模块: ``` from PyQt5.QtWidgets import QApplication, QMainWindow from PyQt5.QtAxContainer import QAxWidget ``` 然后,创建一个PyQt5应用程序并主窗口: ``` app = QApplication([]) window = QMainWindow() window.setGeometry(100, 100, 500, 500) # 设置窗口大小 ``` 接下来,创建一个QAxWidget对象来嵌入外部exe的GUI界面: ``` widget = QAxWidget() widget.setControl('ProgID') # 替换'ProgID'为要嵌入的外部程序的ProgID widget.setProperty('DisplayAlerts', False) # 可选的,用于控制外部程序的属性 widget.setParent(window) widget.setGeometry(0, 0, 500, 500) # 设置widget对象的位置和大小 ``` 最后,显示主窗口并执行应用程序: ``` window.show() app.exec_() ``` 在以上代码中,需要将'ProgID'替换为要嵌入的外部程序的ProgID。例如,如果要嵌入Internet Explorer,可以将'ProgID'设置为'Shell.Explorer'。 这样,就可以在PyQt5应用程序中嵌入另一个exe的GUI界面了。 ### 回答3: PyQt5是一种Python绑定的Qt框架,可以用于开发跨平台的图形用户界面GUI)应用程序。在PyQt5中,我们可以轻松地实现嵌入另一个exe程序的GUI界面。 实现这一功能的关键在于使用QProcess类,该类可以启动一个外部进程,并与之进行通信。下面是实现的步骤: 1. 首先,我们需要导入PyQt5库,并创建一个主应用程序。 2. 创建一个QProcess对象,并设置要启动的exe程序路径。 3. 通过调用QProcess的start方法来启动该进程。 4. 在需要嵌入GUI界面的地方,创建一个QWidget对象,并在该对象上设置布局。 5. 创建一个QWindow对象,并将其作为父对象传递给QWidget的setParent方法。 6. 调用QWidget的createWinId方法获取QWidget的窗口ID,并将其作为参数传递给QProcess的setNativeParent方法。 7. 调用QWidget的winId方法获取窗口ID,并将其作为参数传递给QProcess的start方法。 通过上述步骤,我们可以实现将另一个exe程序的GUI界面嵌入到我们的应用程序中。需要注意的是,嵌入的程序必须使用Qt库来构建其GUI界面。 通过PyQt5实现嵌入另一个exe程序的GUI界面可以有效地提高应用程序的可扩展性和复用性。我们可以将其他已有的GUI程序嵌入到我们的应用程序中,从而实现更加丰富和灵活的功能。 总而言之,使用PyQt5可以轻松地实现嵌入另一个exe程序的GUI界面。通过使用QProcess类和QWidget类的相关方法,我们可以将其他程序的GUI界面嵌入到我们的应用程序中,从而实现更加丰富和灵活的功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一晌小贪欢

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

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

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

打赏作者

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

抵扣说明:

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

余额充值