• <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
            99久久无色码中文字幕人妻| 欧美精品九九99久久在观看| 久久精品国产色蜜蜜麻豆| 亚洲精品tv久久久久久久久| 国产成人久久777777| 久久久亚洲欧洲日产国码aⅴ | 色8激情欧美成人久久综合电| 亚洲AV无一区二区三区久久| 一本色道久久综合狠狠躁| 伊人久久五月天| 国产精品久久久久蜜芽| 一本一本久久aa综合精品| 精品国产乱码久久久久久人妻| 国产精品99久久久久久宅男| 国产91久久综合| 久久综合给合久久狠狠狠97色| 四虎久久影院| 久久综合九色综合网站| 久久WWW免费人成一看片| AV无码久久久久不卡蜜桃| 999久久久免费国产精品播放| 天天做夜夜做久久做狠狠| 狠狠色丁香婷婷综合久久来| 亚洲国产成人久久综合碰碰动漫3d | 久久久久国色AV免费看图片| 一本色道久久99一综合| 精品人妻伦一二三区久久| 亚洲国产精品无码久久九九| 99久久国产主播综合精品| 国产精品美女久久久| 久久精品一本到99热免费| 欧美精品久久久久久久自慰| 91精品国产高清久久久久久国产嫩草 | 大香伊人久久精品一区二区| 久久国产视频99电影| 久久国产精品-国产精品| 久久96国产精品久久久| 97久久精品午夜一区二区| 久久精品视频免费| 伊人久久成人成综合网222| 香蕉久久永久视频|