【发布时间】:2018-08-10 14:35:18
【问题描述】:
我正在尝试在 pyqt5 中创建一个刷新按钮。我正在构建一个桌面应用程序。我编写了扫描特定文件夹并将文件名及其路径保存为数组的代码。
数组值作为项目添加到 QListWidget
self.sampleChoose_list.addItems(sample_directory[0])
我正在尝试创建一个函数来刷新数组的值并将其传递给 QListWidget。
类似的东西
self.refreshSamples.clicked.connect(self.refreshSample)
def refreshSample(self):
sample_directory = []
sample_files = []
for (dirpath, dirnames, filenames) in walk('./Samples'):
filenames = [f for f in filenames if not f[0] == '.']
sample_files.extend(filenames)
break
the_dir = "Samples"
paths = [os.path.abspath(os.path.join(the_dir,filename)) for filename in os.listdir(the_dir) if not filename.startswith('.')]
sample_directory.append(sample_files)
sample_directory.append(paths)
self.sampleChoose_list.addItems(sample_directory[0])
我遇到的问题是:当我按下刷新按钮时,会添加新项目,但不会删除旧项目。如何从 QListWidget 中删除项目?
【问题讨论】:
-
您似乎在使用
refreshSamples作为按钮名称和信号 -
更新问题@Gianluca
标签: python pyqt pyqt5 desktop-application