zoukankan      html  css  js  c++  java
  • QTableView 选中行不修改前景色方案

      在为 QTableView 设置 model 的时候,添加如下语句(ItemDelegate 实现如下):

      ui->tblvMeter->setItemDelegate(new ItemDelegate); 
      //////////////////////////////////////////////////////////
      class ItemDelegate : public QItemDelegate
      {
        Q_OBJECT
      public:
        explicit ItemDelegate(){}
        void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
        {
        QStyleOptionViewItem viewOption(option);
        //高亮显示与普通显示时的前景色一致(即选中行和为选中时候的文字颜色一样)
        viewOption.palette.setColor(QPalette::HighlightedText, index.data(Qt::ForegroundRole).value<QColor>());
        QItemDelegate::paint(painter, viewOption, index);
        }
      };

  • 相关阅读:
    正向代理和反向代理
    Unicode
    utf-8
    ISO 8895-1
    ProtocalBuffers学习记录
    C#基础知识
    MSBuild学习记录
    Linux学习笔记
    Jenkins学习记录
    CruiseControl.Net学习记录
  • 原文地址:https://www.cnblogs.com/hbrw/p/12049148.html
Copyright © 2011-2022 走看看