• QTableWidget点击表头进行排序 实现


    一、 .cpp文件

    #include "qtablewidgetsort.h"
    #include <QDebug>
    
    QTableWidgetSort::QTableWidgetSort(QWidget *parent)
        : QMainWindow(parent)
    {
        ui.setupUi(this);
        ui.tableWidget->setRowCount(10);
        ui.tableWidget->setColumnCount(5);
    
        QStringList hListheader;
        hListheader << QString::fromLocal8Bit("姓名");
        ui.tableWidget->setHorizontalHeaderLabels(hListheader);
    
        ui.tableWidget->setItem(0, 0, new QTableWidgetItem("a"));
        ui.tableWidget->setItem(1, 0, new QTableWidgetItem("d"));
        ui.tableWidget->setItem(2, 0, new QTableWidgetItem("c"));
        ui.tableWidget->setItem(3, 0, new QTableWidgetItem("b"));
    
        ui.tableWidget->setItem(4, 0, new QTableWidgetItem("19"));
        ui.tableWidget->setItem(5, 0, new QTableWidgetItem("15"));
        ui.tableWidget->setItem(6, 0, new QTableWidgetItem("11"));
    
        ui.tableWidget->setItem(7, 0, new QTableWidgetItem(QString::fromLocal8Bit("张三")));
        ui.tableWidget->setItem(8, 0, new QTableWidgetItem("qqq"));
        ui.tableWidget->setItem(9, 0, new QTableWidgetItem("zzzz"));
    
        //连接水平表头响应
        connect(ui.tableWidget->horizontalHeader(), SIGNAL(sectionClicked(int)), this, SLOT(sort(int)));
    }
    
    QTableWidgetSort::~QTableWidgetSort()
    {
    
    }
    
    void QTableWidgetSort::sort(int col)
    {
        ui.tableWidget->sortItems(col, Qt::AscendingOrder);
    }

    二、.h文件

    #ifndef QTABLEWIDGETSORT_H
    #define QTABLEWIDGETSORT_H
    
    #include <QtWidgets/QMainWindow>
    #include "ui_qtablewidgetsort.h"
    
    class QTableWidgetSort : public QMainWindow
    {
        Q_OBJECT
    
    public:
        QTableWidgetSort(QWidget *parent = 0);
        ~QTableWidgetSort();
    
    public slots:
        void sort(int col);
    
    private:
        Ui::QTableWidgetSortClass ui;
    };
    
    #endif // QTABLEWIDGETSORT_H

    三、运行程序

      

    四、效果图

      

  • 相关阅读:
    WinCE 编译固定IP到内核
    wince telnet登陆密码的取消
    lab 美国大学实验室
    PLC 开放性源代码的软件
    linux 嵌入式Linux下3G无线上网卡的驱动
    创业者/职业经理人/员工受用的36句感悟
    iShoot Developer Makes $600,000 In One Month
    如何彻底解决Vista狂读硬盘的问题
    宁做创业狼,不做打工狗
    跟我学EJBCA系列一:安装
  • 原文地址:https://www.cnblogs.com/jiangson/p/9147662.html
Copyright © 2020-2023  润新知