Я уже закодировал это для QTableWidget
:
void ReadOnlyWindow::addReportIconToRow(const int rowIndex){
QIcon icon;
QSize sz(16, 16);
icon.addPixmap(style()->standardIcon(QStyle::SP_FileDialogEnd).pixmap(sz), QIcon::Normal);
QTableWidgetItem *iconItem = new QTableWidgetItem();
iconItem->setText("report");
iconItem->setIcon(icon);
iconItem->setFlags(iconItem->flags() & (~Qt::ItemIsEditable));
ui->homeWorksTable->setItem(rowIndex, REPORT_COLUMN_INDEX, icon);
}
REPORT_COLUMN_INDEX
это const int
из класса и имеет значение 4
.
Я пытаюсь найти узнал, как переписать код, если таблица - это `QTableView`.
Я пытался использовать setItemData()
и setData()
, но я думаю, что использовал его неправильно, потому что он не работал.
PS: Теперь я хочу сделать это для QTableView
, потому что туда легко загрузить таблицу SQLite. Эта часть работает. Еще я добавил еще одну колонку. Теперь мне нужно добавить текст во все строки этого значка столбца (как в моем коде для QTableWidget
). Функция там должна быть для одной ячейки и будет реализована в l oop.