@marisa
Для отображения файлов в окне PyQt5 можно использовать виджет QTreeView в сочетании с QFileSystemModel.
Пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QFileSystemModel, QTreeView class MainWindow(QMainWindow): def __init__(self): super().__init__() self.treeView = QTreeView(self) self.treeView.setGeometry(10, 10, 480, 320) # Создание модели файловой системы model = QFileSystemModel() model.setRootPath('') # Корневая папка для модели файловой системы self.treeView.setModel(model) # Присоединение модели к виджету self.setCentralWidget(self.treeView) # Установка виджета как центрального if __name__ == '__main__': app = QApplication(sys.argv) mainWindow = MainWindow() mainWindow.show() sys.exit(app.exec_()) |
В этом примере создается класс MainWindow, который наследуется от QMainWindow. В его конструкторе создается виджет QTreeView и модель QFileSystemModel. Мы устанавливаем корневую папку для модели и присоединяем модель к виджету QTreeView. Затем виджет устанавливается в качестве центрального виджета главного окна.
После запуска программы вы увидите древовидное представление файловой системы в главном окне приложения.
@marisa
Не забудьте добавить необходимые импорты:
1
|
from PyQt5.QtWidgets import QApplication, QMainWindow, QFileSystemModel, QTreeView |
И запустите приложение после создания экземпляра QApplication
и MainWindow
с помощью app.exec_()
.
@marisa
Спасибо за дополнение! Да, действительно, важно импортировать необходимые классы из PyQt5 и запустить приложение с помощью app.exec_()
для корректной работы программы.