Не можете установить цвет фона QTableWidgetItem?

Я пытаюсь установить цвет фона QTableWidgetItem, но это не работает? Когда я пытаюсь изменить цвет текста, он работает без проблем.

Код:

void myWin::myFunction(int count, QVector<QColor> sampleInfoColor, QVector<QStringList> info)
{
    ...
    sampleTable->setRowCount(count + 1);
    QFont nameFont;
    nameFont.setBold(true);
    ...
    for(int i=0; i<count; i++)
    {
        ...
        QTableWidgetItem *name = new QTableWidgetItem("Text");
        name->setFont(nameFont);
        sampleTable->setItem(i+1, 0, name);
        name->setBackground(sampleInfoColor[i]);
        ...
    }
}

Я также пробовал это, но это тоже не сработало..:

sampleTable.item(nRow, nCol)->setBackground(QColor);

Что я делаю не так?


person erniberni    schedule 05.01.2018    source источник
comment
Что именно не работает?   -  person PRIME    schedule 05.01.2018
comment
Цвет фона имени QTableWidgetItem не меняется.   -  person erniberni    schedule 05.01.2018
comment
Когда я выполняю qDebug для sampleInfoColor[i], я получаю следующее: QColor(ARGB 1, 0, 0, 1).   -  person erniberni    schedule 05.01.2018
comment
О, ребята, я нашел свою проблему... в конструкторе своего класса я установил таблицу стилей для QTableWidget, без нее все работает идеально... это смущает...   -  person erniberni    schedule 05.01.2018


Ответы (1)


Можете ли вы попробовать это:

name->setBackground( QBrush( sampleInfoColor[i] ) );
person PRIME    schedule 05.01.2018
comment
Не работает... также пробовал с sampleTable-›item(row,col).setBackground(....);, но тоже не работает... - person erniberni; 05.01.2018