You can specify aliases for column names, for example, in QSqlTableModel:
model->setHeaderData(0, Qt::Horizontal, QObject::tr("ID")); model->setHeaderData(1, Qt::Horizontal, QObject::tr("First name")); model->setHeaderData(2, Qt::Horizontal, QObject::tr("Last name"));
In the same way, you can get aliases for column names, for example, from QSqlTableModel:
QString columnName1 = model->headerData(0, Qt::Horizontal, Qt::DisplayRole).toString(); QString columnName2 = model->headerData(1, Qt::Horizontal, Qt::DisplayRole).toString(); QString columnName3 = model->headerData(2, Qt::Horizontal, Qt::DisplayRole).toString();
By default, if you do not set an alias, the column name will be the same as what was read from the table metadata when initializing your model. Make sure your section index is a valid column index. Be sure to specify the horizontal orientation for columns and vertical for rows.
Hope this helps.
source share