Добрый вечер ребята. У меня следующий вопрос: Создаю дерево с любым уровнем вложенности. В каждый QStandartItem в data ложу id эелемента который отображаю. Проблема в следующем: обрабатываю событие клика по узлу дерева. Если я кликаю по верхнему уровню, то через QModelIndex могу получить QStandartItem и из него его данные. Если кликаю по внутреннему узлу, то он мне всё равно возвращает самый верхний родитель узла, а мне нужно у кликнутого узла получить id. Почему QModelIndex возвращает номера строк и столбцов(я через них получаю QStandartItem ) только верхнего уровня? Как мне добраться до внутренних узлов? Подскажите ребята!
Прилагаю код:
C++ (Qt)
void Widget::on_treeView_clicked(const QModelIndex &index)
{
qDebug()<<groups->GetGroupID(index);
}
C++ (Qt)
int Groups::GetGroupID(QModelIndex index){
QStandardItem *item = _model->item(index.row(),index.column());
qDebug()<<index.row()<<index.column();
return item->data().toInt();
}