自学内容网 自学内容网

PyQt5小项目实践——文件浏览器

下面是一个简单的文件浏览器应用程序,使用 Python 和 PyQt5 编写。这个应用程序可以显示系统中的文件和目录,并允许用户浏览文件系统。

代码实现

import sys
import os
from PyQt5.QtWidgets import QApplication, QMainWindow, QTreeView, QFileSystemModel, QVBoxLayout, QWidget

class FileBrowser(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setWindowTitle("文件浏览器")
        self.setGeometry(100, 100, 800, 600)

        # 创建一个树形视图来显示文件系统
        self.tree_view = QTreeView(self)
        self.tree_view.setUniformRowHeights(True)

        # 创建一个文件系统模型
        self.model = QFileSystemModel()
        self.model.setRootPath(os.path.expanduser("~"))  # 设置根路径为用户主目录
        self.tree_view.setModel(self.model)

        # 设置树视图的根路径
        self.tree_view.setRootIndex(self.model.index(os.path.expanduser("~")))

        # 创建布局并添加到窗口
        layout = QVBoxLayout()
        layout.addWidget(self.tree_view)

        container = QWidget()
        container.setLayout(layout)
        self.setCentralWidget(container)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    file_browser = FileBrowser()
    file_browser.show()
    sys.exit(app.exec_())

代码讲解

  1. 窗口设置

    • 创建一个继承自 QMainWindowFileBrowser 类,并设置窗口标题和初始尺寸。
  2. 树形视图

    • 使用 QTreeView 组件来显示文件系统。
  3. 文件系统模型

    • 使用 QFileSystemModel 来提供文件系统的数据。
    • 设置根路径为用户的主目录。
  4. 布局容器

    • 创建一个 QVBoxLayout 布局,并将树形视图添加至布局中。
    • 将布局设置为主窗口的中心小部件。

运行代码

将上述代码保存为 file_browser.py,然后在命令行中运行:

python file_browser.py

功能说明

  • 这个简单的文件浏览器会展示用户主目录下的所有文件和文件夹。
  • 用户可以通过点击文件夹来展开或查看文件内容。

原文地址:https://blog.csdn.net/m0_54490473/article/details/140580635

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!