• <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>

            逛奔的蝸牛

            我不聰明,但我會很努力

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

            In order to change the color of the items in the model you need to reimplement the data function and return the colors you want for theQt::BackgroundColorRole or the Qt::TextColorRole roles. See the documentation:

            http://doc.trolltech.com/4.3/qabstractitemmodel.html#data

            http://doc.trolltech.com/4.3/qt.html#ItemDataRole-enum

            The example below demonstrates how this can be achieved.

            Note that you can also reimplement the QItemDelegate::paint() in order to change the color the items in a view. See the following FAQ:

            http://trolltech.com/developer/knowledgebase/faq.2007-11-21.7774969370/

            #include <QtGui>
            
            class ColorModel : public QAbstractTableModel
            {
            public:
                ColorModel(QObject *parent) 
                {
                    QStringList firstRow;
                    QStringList secondRow;
            
                    for (int i = 0; i < 5; i++ ) {
                        firstRow.insert(i,"Row " + QString::number(i+1));
                    }
                    for (int i = 0; i < 5; i++ ) {
                        secondRow.insert(i,"Row " + QString::number(i+1));
                    }
            
                    stringList << firstRow << secondRow;
                }
            
                // Returns the number of rows
                int rowCount ( const QModelIndex & parent = QModelIndex() ) const
                {
                    return 2;
                }
            
                // Returns the number of columns
            
                int columnCount ( const QModelIndex & parent = QModelIndex() ) const
                {
                    return 5;
                }
            
                // Returns an appropriate value for the requested data.
                // If the view requests an invalid index or if the role is not
                // Qt::DisplayRole, Qt::BackgroundColorRole or QTextColorRole, an invalid variant is returned.
                // Any valid index that corresponds to a string for the index's column and row in
                // the stringlist is returned for the Qt::DisplayRole
            
                QVariant data ( const QModelIndex & index, int role = Qt::DisplayRole ) const 
                {
                    if (!index.isValid())
                        return QVariant();
            
                    if (role == Qt::BackgroundRole) {
                        if (index.row() == 0)
                            return QColor(Qt::blue);
                        else
                            return QColor(Qt::white);
                    } else if (role == Qt::DisplayRole) {
                        QStringList list = (QStringList)stringList.at(index.row());
                        return list.at(index.column());
                    } else if (role == Qt::ForegroundRole ) {
                        if (index.row() == 1)
                            return QColor(Qt::red);
                    } 
            
                    return QVariant();
                }
            
            private: 
                // Each row will consist of a list of strings
                QList<QStringList>stringList;
            };
            
            int main(int argc, char **argv)
            {
                QApplication app(argc, argv);
                QWidget widget;
            
                QHBoxLayout *layout = new QHBoxLayout(&widget);
                QTreeView *treeView = new QTreeView(&widget);
                QTableView *tableView = new QTableView(&widget);
                ColorModel *model = new ColorModel(tableView);
                tableView->setModel(model);
                treeView->setModel(model);
                layout->addWidget(treeView);
                layout->addWidget(tableView);
                widget.show();
                return app.exec(); 
            }
            posted on 2009-05-18 17:26 逛奔的蝸牛 閱讀(841) 評論(0)  編輯 收藏 引用 所屬分類: Qt
            亚洲国产精品无码成人片久久| 久久丫精品国产亚洲av不卡 | 天天综合久久一二三区| 色综合久久中文字幕综合网| 久久久久久国产精品无码下载| 久久午夜福利无码1000合集| 精品人妻久久久久久888| 久久91亚洲人成电影网站| 久久综合久久鬼色| 伊人久久大香线蕉av一区| 精品免费tv久久久久久久| 亚洲国产成人久久综合碰| 久久久久亚洲AV无码麻豆| 久久久精品波多野结衣| 亚洲人成伊人成综合网久久久| 精品一区二区久久久久久久网站| 久久夜色精品国产www| 久久久无码人妻精品无码| 久久99精品久久久久久秒播| 色欲久久久天天天综合网精品| 久久久久97国产精华液好用吗| 中文字幕无码免费久久| 欧美精品丝袜久久久中文字幕| 97久久国产亚洲精品超碰热| 思思久久好好热精品国产| 精品久久久久久久久久久久久久久| 亚洲色大成网站www久久九 | 久久精品一区二区影院| 91精品国产91久久久久福利| A级毛片无码久久精品免费| 久久久久亚洲精品天堂久久久久久 | 99久久精品无码一区二区毛片| 久久亚洲精品国产精品| 久久精品国产99久久久古代| 无码任你躁久久久久久| 久久激情亚洲精品无码?V| 国产精品九九久久免费视频| 中文字幕亚洲综合久久2| 久久中文娱乐网| 夜夜亚洲天天久久| 狠狠色综合网站久久久久久久|