如何用pyqt/pyside实现一个文件列表的功能?

如何用pyqt/pyside实现一个文件列表的功能?

就是类似百度网盘那种,显示文件信息然后可以点击下载,想请大佬们给个思路该怎么做。


回答:

用 QListWidget 来显示文件列表,再用 QFileDialog 来选择和下载文件:

from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton, QListWidget, QFileDialog

import sys

class FileListWidget(QWidget):

def __init__(self):

super().__init__()

self.initUI()

def initUI(self):

self.setWindowTitle('File List')

self.layout = QVBoxLayout()

self.setLayout(self.layout)

self.listWidget = QListWidget()

self.layout.addWidget(self.listWidget)

self.button = QPushButton('Download')

self.button.clicked.connect(self.onDownload)

self.layout.addWidget(self.button)

def addFile(self, filename):

self.listWidget.addItem(filename)

def onDownload(self):

filename, _ = QFileDialog.getOpenFileName(self, 'Open file', '/')

if filename:

self.addFile(filename)

def main():

app = QApplication(sys.argv)

widget = FileListWidget()

widget.show()

sys.exit(app.exec_())

if __name__ == '__main__':

main()

以上是 如何用pyqt/pyside实现一个文件列表的功能? 的全部内容, 来源链接: utcz.com/p/938966.html

回到顶部