Qt :: ToolTipRole не запускается - PullRequest
0 голосов
/ 18 апреля 2019

Я использую модель, реализованную с использованием QAbstractTableModel.Я хочу показать отдельные подсказки для всех заголовков.Однако в реализациях data () и headerData (), когда я печатаю роль, она никогда не становится Qt :: ToolTipRole.Есть ли что-то еще, что я должен сделать, чтобы вызвать tooltiprole здесь?

QVariant jlsGenericReportTableModel::data(const QModelIndex &index, int role) const
{
    printf("Role in data() = %d\n",role);
    if (role == Qt::DisplayRole)
    {

        //        printf(" --- Returned\n");
        if(_dataStore)
        {
            if(index.row() < _dataStore->RowCount())
            {
                return _dataStore->DataForTuple(index.row(),index.column());
            }
        }
        else
        {
            if(index.row() < _rows.size())
            {
                return _rows.at(index.row())->DataForColumn(index.column());
            }
        }
    }
else if (role == Qt::TextAlignmentRole )
{

    if (( (QMetaType::Type)(data(index,Qt::DisplayRole)).type()) == QMetaType::QString)
        return QVariant(Qt::AlignLeft | Qt::AlignVCenter);
    else
        return QVariant(Qt::AlignRight | Qt::AlignVCenter);
}
else if (role == Qt::ToolTipRole) {
    printf("Triggered\n");     //Doesn't come here
    //if (orientation == Qt::Horizontal)
        return QString("Horizontal Header No. ");
    //else
      //  return QString("Vertical Header No. ");
}
return QVariant();

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...