gpt4 book ai didi

c++ - 使用 qt 浏览、列出和删除文件

转载 作者:行者123 更新时间:2023-11-30 03:09:17 25 4
gpt4 key购买 nike

我使用 qt designer 创建了以下表单。我添加了一个与 QDir 和 QFileDialog 一起使用的添加文件按钮,并将文件加载到 listWidget 中。

alt text

这是我用文件填写此表单的方法。

void RightDoneIt::changeDirectory()
{
/* select a directory using file dialog */
QString path = QFileDialog::getExistingDirectory (this, tr("Directory"), directory.path());
if ( path.isNull() == false )
{
directory.setPath(path);
fillList();
}
}


/*get list of file from given directory and the append it to listWidget */
void RightDoneIt::fillList()
{
ui->listWidget->clear();
ui->listWidget->addItems(directory.entryList());



}

我想修改我的代码,以便我可以在文件名旁边列出文件位置和文件大小,并使这个删除文件按钮起作用。

我只是希望能够使用 ctrl 或命令键(对于 mac)选择文件,然后按删除键从我的列表中删除这些文件。

我必须使用 QtreeWidget 而不是 listwidget 吗?

这样做的最佳做法是什么?

有什么代码建议吗?

谢谢大家!

最佳答案

如果您只是列出文件(没有文件夹和子文件夹结构),则不需要 QTreeWidget

但由于您愿意显示文件位置和文件大小,我会使用 QTableWidget(或 QTableView)。

但是,我建议看一下 QFileSystemModel .根据您尝试使用您的应用程序执行的操作,此类可能会派上用场:您可以使用此模型并将其显示在 View 小部件中。

QFileSystemModel 自带方法,如remove()并且还将处理文件重命名。

关于c++ - 使用 qt 浏览、列出和删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4221660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com