QTableWidget необходимая информация о столбце выбранных строк

0

У меня есть QTableWidget, который отображает файлы.

То, что я хочу сделать, - это выбрать 1 или несколько строк из этой таблицы и передать содержимое первого столбца каждой строки в функцию, которая сможет манипулировать.

QModelIndexList indexList = ui->filesTable->selectionModel()->selectedIndexes();
int row;
foreach (QModelIndex index, indexList) {
    row = index.row();
    qDebug() << row;
}

У меня есть этот код, но он передает индексы, и мне нужно содержимое первого столбца QTableWidget в строке или строках, которые я выбираю.

Спасибо за любую помощь заранее!

  • 1
    Что если вы проверите 'if (index.row () == 0)'?
Теги:
qt

1 ответ

1
Лучший ответ

Чтобы получить содержимое ячейки, вам необходимо использовать метод QModelIndex::data:

QModelIndexList indexList = ui->filesTable->selectionModel()->selectedIndexes( );
foreach (QModelIndex index, indexList)
{
  qDebug() << index->data( Qt::DisplayRole );
}

Вы можете получить дополнительную информацию о выбранных ячейках, просто изменив роль. Пользовательские модели могут принимать пользовательские роли.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню