美文网首页
QFileDialog按名称/大小排序

QFileDialog按名称/大小排序

作者: 豪爵吸金ing | 来源:发表于2024-09-26 18:34 被阅读0次

直接上代码

QFileDialog dialog;
 dialog.setOption(QFileDialog::DontUseNativeDialog);
 auto treeView = dialog.findChild<QTreeView*>(QString("treeView"),Qt::FindChildrenRecursively);
 if(treeView){
     QStringList headerContents = getHeaderLabels(treeView);
     qDebug()<<"header is "<< headerContents;
     //header is ("Name", "Size", "Type", "Date Modified")
     treeView->model()->sort(headerContents.indexOf("Name"), Qt::AscendingOrder);
 }

 if (dialog.exec() == QDialog::Accepted) {
     // 处理选择的文件
 }

QStringList getHeaderLabels(QTreeView *treeView) {
    QStringList headerLabels;
    if (treeView) {
        auto model = treeView->model();
        if (model) {
            for (int i = 0; i < model->columnCount(); ++i) {
                QString headerText = model->headerData(i, Qt::Horizontal).toString();
                headerLabels << headerText;
            }
        }
    }
    return headerLabels;
}

相关文章

  • Sheet表按名称排序

    需求分析 若表格中有sheet1.sheet2.sheet3.sheet4......等几十个表格,万一顺序变成了...

  • Java 数据结构

    冒泡排序,把数组里大小排序混乱的元素重新排序 插入排序,按元素大小从左往右排序 选择排序,依次在数组中找出最小的元...

  • js中对象数组按对象属性排序

    数组对象要按属性大小排序怎么办? 数组对象属性排序 我们要如何实现数组中的对象按data大小排序? sort方法 ...

  • 数据库实操练习

    -- 按生日大小排序select * from student order by substring(card, ...

  • 5.休眠排序

    原理:将需要排序的数组元素大小转化为相应的休眠时间,同时加载到sleep中,按大小打印从而实现排序。

  • 使用dplyr包处理数据-学习笔记

    # dplyr 基础 按值筛选观测 filter() 对行进行重新排序 arrange() 按名称选取变量 sel...

  • JS实现数组排序的方法有哪些?

    数组排序在日常编程中用到的其实还是比较多的,比如把一组数据按时间排序,按首字母排序,按大小排序等等,那么就让我们一...

  • JS实现数组排序的方法有哪些?

    数组排序在日常编程中用到的其实还是比较多的,比如把一组数据按时间排序,按首字母排序,按大小排序等等,那么就让我们一...

  • 排序实例

    描述 访问者排序规则:部门、成员依次排序;部门、成员各自按名称首字符排序:特殊字符,数字,字母,汉字(转为拼音)排...

  • 按照Value对HashMap排序

    TreeMap基于红黑树排序的算法,默认数据put进来按照key的大小升序排序,如果需要改成按value排序,则自...

网友评论

      本文标题:QFileDialog按名称/大小排序

      本文链接:https://www.haomeiwen.com/subject/vdtkrjtx.html