Вы можете использовать QTableWidgetItem::setData()
примерно так:
setData(Qt::UserRole, myData); // set
Где myData
- поддерживаемый тип QVariant . Вы можете использовать QTableWidgetItem::data()
для получения значения, которое вы храните.
Если вам нужно более одного, вы можете использовать Qt::UserRole
+ 1, + 2 и т. Д. (Qt::UserRole
- это «Первая роль, которую можно использовать для конкретных приложений». другие типы ролей здесь ).
Если вы храните пользовательский тип, который изначально не поддерживается QVariant, вам необходимо зарегистрировать свой тип в мета-объектной системе Qt. Посмотрите QMetaType для более подробной информации об этом.
Если вы хотите сохранить целое число, например:
QTableWidgetItem* widgetItem = tableWidget->item(row, col); // get the item at row, col
int myInteger = 42;
widgetItem->setData(Qt::UserRole, myInteger);
// ...
myInteger = widgetItem->data(Qt::UserRole);