pyside2 加载指定格式的文件列表到界面
时间: 2023-09-08 16:15:00 浏览: 215
PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法
要实现加载指定格式的文件列表到PySide2界面,可以使用QFileDialog来获取文件路径,使用QTableWidget显示文件列表。
下面是一个简单的示例代码:
```python
import os
from PySide2.QtWidgets import QApplication, QMainWindow, QFileDialog, QTableWidget, QTableWidgetItem
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建表格控件
self.table = QTableWidget()
self.table.setColumnCount(2)
self.table.setHorizontalHeaderLabels(['文件名', '文件大小'])
self.setCentralWidget(self.table)
# 添加菜单
menu_bar = self.menuBar()
file_menu = menu_bar.addMenu('文件')
open_action = file_menu.addAction('打开')
open_action.triggered.connect(self.open_files)
def open_files(self):
# 获取文件路径列表
file_paths, _ = QFileDialog.getOpenFileNames(self, '打开文件', '.', '文本文件 (*.txt);;所有文件 (*.*)')
# 清空表格
self.table.setRowCount(0)
# 遍历文件列表,添加到表格中
for file_path in file_paths:
file_name = os.path.basename(file_path)
file_size = os.path.getsize(file_path)
row_count = self.table.rowCount()
self.table.insertRow(row_count)
self.table.setItem(row_count, 0, QTableWidgetItem(file_name))
self.table.setItem(row_count, 1, QTableWidgetItem(str(file_size)))
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
这个示例程序创建了一个QMainWindow窗口,其中包含一个QTableWidget表格控件和一个菜单。当用户点击菜单中的“打开”选项时,就会弹出一个文件选择对话框,用户可以选择一个或多个文件。然后将选择的文件名和文件大小添加到表格中。注意,示例中只支持打开文本文件和所有文件,你可以根据需要修改这些参数。
阅读全文