青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

逛奔的蝸牛

我不聰明,但我會(huì)很努力

   ::  :: 新隨筆 ::  ::  :: 管理 ::

This will depend a little on the size of your dataset. Since we use a stable sort you can relatively easily achieve this by keeping a list of sort columns and sort them from last to first. See the example below for a demonstration.

If you have a lot of records you might want to implement your own model that will more efficiently sort based on multiple columns.

#include <QtGui>

#define SETPERSON(index, first, second, salary)     setItem(index, 0, new QTableWidgetItem(first));     setItem(index, 1, new QTableWidgetItem(second));     setItem(index, 2, new QTableWidgetItem);     item(index, 2)->setData(Qt::DisplayRole, salary);

class Table : public QTableWidget
{
    Q_OBJECT
public:
    Table(QWidget *parent = 0)
        : QTableWidget(6, 3, parent)
    {
        SETPERSON(0, "Jerry", "Springer", 1000000);
        SETPERSON(1, "Foo", "Springer", 12341);
        SETPERSON(2, "John", "Wayne", 12341);
        SETPERSON(3, "Bob", "Carver", 80000);
        SETPERSON(4, "Bob", "Carver", 81000);
        SETPERSON(5, "Bob", "Ulong", 60000);
        updateSortOrder();
        connect(horizontalHeader(), SIGNAL(sectionClicked(int)),
                this, SLOT(onHeaderClicked(int)));
        disconnect(horizontalHeader(), SIGNAL(sectionPressed(int)), this, SLOT(selectColumn(int)));

    }

    void updateSortOrder()
    {
        QStringList list;
        list << "First name" << "Last name" << "Salary";
        for (int i=0; i<sortOrder.size(); ++i)
            list[sortOrder.at(i).column].append("(" + QString::number(i + 1) + ")");
        setHorizontalHeaderLabels(list);
        for (int i=sortOrder.size() - 1; i>=0; --i) {
            sortItems(sortOrder.at(i).column, sortOrder.at(i).ascending ? Qt::AscendingOrder : Qt::DescendingOrder);
        }
    }
public slots:
    void onHeaderClicked(int section)
    {
        bool ascending = true;
        if (!(QApplication::keyboardModifiers() & Qt::ControlModifier) || sortOrder.isEmpty()) {
            if (!sortOrder.isEmpty() && sortOrder.first().column == section) {
                ascending = !sortOrder.first().ascending;
            }
            sortOrder.clear();
        } else {
            const int index = findSection(section);
            if (index != -1) {
                if (index == sortOrder.size() - 1) {
                    ascending = !sortOrder.last().ascending;
                }
                sortOrder.removeAt(index);
            }
		}
        sortOrder.append(SortData(section, ascending));
        updateSortOrder();
    }
private:
    int findSection(int section) const
    {
        for (int i=0; i<sortOrder.size(); ++i) {
            if (sortOrder.at(i).column == section)
                return i;
        }
        return -1;
    }
    struct SortData {
        SortData(int sec = -1, bool asc = true) : column(sec), ascending(asc) {}

        int column;
        bool ascending;
    };
    QList<SortData> sortOrder;
};


#include "main.moc"


int main(int argc, char **argv)
{
    QApplication a(argc, argv);
    Table w;
    w.show();
    return a.exec();
}
posted on 2009-05-18 17:28 逛奔的蝸牛 閱讀(1421) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Qt
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品国产三级国产aⅴ入口| 亚洲激情校园春色| 国产日韩在线视频| 国产精品久久7| 国产日韩专区在线| 玉米视频成人免费看| 亚洲国产女人aaa毛片在线| 亚洲精品久久久一区二区三区| 99视频有精品| 久久精品免费播放| 亚洲电影免费观看高清完整版在线观看 | 欧美久久久久久久久| 欧美女人交a| 国产精品亚洲网站| 亚洲黄色尤物视频| 亚洲午夜激情在线| 蜜臀av性久久久久蜜臀aⅴ| 亚洲美女av黄| 久久久综合视频| 亚洲精选视频在线| 亚洲电影天堂av| 亚洲一级片在线看| 久久中文字幕一区| 一区二区三区高清| 久久午夜精品一区二区| 欧美午夜精品久久久久免费视| 国产亚洲网站| 一本综合久久| 欧美激情第五页| 篠田优中文在线播放第一区| 欧美激情一区二区三区四区| 国产一区美女| 午夜在线不卡| 亚洲理论在线| 嫩草国产精品入口| 国语自产精品视频在线看一大j8| 亚洲综合三区| 99视频一区二区| 欧美国产日韩精品| 亚洲激情综合| 欧美成人精品一区| 久久久精品日韩| 国产综合色产在线精品| 欧美一区二区日韩| 亚洲视频axxx| 国产精品s色| 亚洲欧美在线看| 一区二区三区日韩| 欧美日韩一区在线观看视频| 亚洲精品一区二区三区av| 欧美成人一区二免费视频软件| 久久成人18免费观看| 国产日韩欧美综合一区| 欧美一区二区三区久久精品| 亚洲在线播放电影| 国产精品系列在线播放| 亚洲欧美视频一区| 亚洲欧美成人| 国产深夜精品福利| 久久精品欧洲| 欧美自拍偷拍午夜视频| 国内伊人久久久久久网站视频| 欧美有码在线观看视频| 欧美影片第一页| 亚洲欧美日韩综合aⅴ视频| 国产精品天天摸av网| 欧美一区二区三区婷婷月色 | 久久久精品网| 欧美中日韩免费视频| 国产一区二区三区在线观看视频 | 亚洲一区久久| 亚洲国产精品欧美一二99| 欧美成人午夜激情视频| 日韩视频在线一区二区| 99国产精品国产精品久久| 国产精品毛片在线看| 欧美呦呦网站| 美女视频一区免费观看| 一区二区三区久久久| 亚洲一区二区在线免费观看| 国产主播在线一区| 亚洲第一中文字幕在线观看| 欧美日韩综合在线免费观看| 性欧美激情精品| 久久综合激情| 亚洲黄色免费电影| 亚洲毛片在线看| 国产精品久久久久久久久久久久| 欧美伊久线香蕉线新在线| 久久久久久一区二区| 亚洲国产影院| 亚洲天堂av在线免费| 一区免费观看视频| 一本大道久久a久久精品综合| 国产色产综合产在线视频| 亚洲激情社区| 国产一区二区三区在线观看免费视频| 欧美激情一区二区三区在线| 国产精品99免费看| 久久精品国产久精国产思思| 欧美国产免费| 免费看av成人| 国产精品网站一区| 91久久夜色精品国产网站| 国产亚洲精品久久久久婷婷瑜伽| 日韩视频在线一区二区三区| 国产综合久久久久影院| 亚洲天堂偷拍| 99精品福利视频| 久久综合色88| 欧美一区二区日韩| 欧美日韩亚洲一区二区三区在线| 麻豆视频一区二区| 国产日韩欧美综合一区| 亚洲一区二区网站| 亚洲一区在线免费| 欧美成人激情视频| 欧美成人免费视频| 红桃av永久久久| 欧美一区二区免费视频| 午夜激情综合网| 欧美特黄一级大片| 91久久精品日日躁夜夜躁国产| 国产有码在线一区二区视频| 亚洲色无码播放| 亚洲小说春色综合另类电影| 欧美日韩成人在线观看| 亚洲国产91| 亚洲国产一区二区视频| 久久最新视频| 欧美激情一区二区久久久| 亚洲国产日韩欧美在线动漫| 久久亚洲精品网站| 免费看亚洲片| 亚洲欧洲综合另类| 夜夜爽99久久国产综合精品女不卡| 久久久久这里只有精品| 亚洲无亚洲人成网站77777| 亚洲激情女人| 在线日韩视频| 亚洲国产精品999| 影音先锋一区| 亚洲精品日韩精品| 国内精品视频666| 午夜精品亚洲| 亚洲网址在线| 一区二区在线观看av| 亚洲电影在线观看| 亚洲第一精品夜夜躁人人爽| 久久久久久穴| 亚洲欧洲精品一区二区三区不卡 | 国产精品h在线观看| 一区二区三区欧美在线| 欧美一区二区精美| 国内外成人免费激情在线视频网站 | 欧美精品一卡二卡| 一本久道久久综合中文字幕| 亚洲一区二区三区影院| 国产精品亚发布| 久久成人人人人精品欧| 欧美成人国产| 亚洲一区二区伦理| 韩国av一区二区| 欧美紧缚bdsm在线视频| 中文精品视频一区二区在线观看| 欧美一区二区在线观看| 亚洲国产美女| 国产精品久久久久aaaa樱花| 久久免费视频网站| 亚洲免费成人av| 久久一区欧美| 亚洲欧美国产精品桃花| 精品91免费| 国产精品久久久久av| 鲁大师影院一区二区三区| 99国产精品久久| 欧美电影免费网站| 午夜精品美女久久久久av福利| 伊人久久婷婷| 国产精品日本欧美一区二区三区| 麻豆精品传媒视频| 新片速递亚洲合集欧美合集| 亚洲激精日韩激精欧美精品| 欧美在线精品一区| 一本色道久久综合亚洲精品高清| 狠狠色狠狠色综合| 国产精品久久久久影院色老大| 蜜臀va亚洲va欧美va天堂| 亚洲欧美国产高清va在线播| 亚洲精品久久久久久久久久久久| 久久久久久久网站| 欧美在线一级va免费观看| 亚洲欧美日韩国产一区| 久久综合给合久久狠狠色| 亚洲少妇中出一区| 亚洲精品欧美极品| 亚洲国产精品久久精品怡红院 | 亚洲区一区二| 激情欧美一区二区| 国产精品一区久久|