Russian Qt Forum
Май 15, 2024, 10:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема с контейнером QList<QStandardItem>  (Прочитано 3604 раз)
Waryable
Гость
« : Ноябрь 25, 2008, 10:19 »

Имеется такая конструкция:
Код:
QList<QStandardItem> rowItems;
QStandardItem *parentItem;
for ( int nCol = 0; nCol < 3; ++nCol )
{
...
        QStandardItem *curItem = new QStandardItem/*(icon, textItem)*/;
curItem ->setData(textItem, Qt::DisplayRole);
curItem ->setData(icon, Qt::DecorationRole);
rowItems.insert(nCol, curItem);

...
}
parentItem -> appendRow(rowItems);

Проблема в том, что компилятор ругается на последнюю строку трехэтажным матом. Начало его ругательства выглядит следующим образом:
Цитировать
error C2664: 'void QList<T>::insert(int,const T &)' : cannot convert parameter 2 from 'QStandardItem *' to 'const QStandardItem &'
Далее в окне вывода идет лекция на эту тему.
parentItem здесь является текущим предком в модели для QTreeView. Т.е. к текущему предку прицепляется строка дочерних элементов.

Сколько не бился с этим, не могу найти решения. Люди добрые помогите!   Веселый
Записан
spirit
Гость
« Ответ #1 : Ноябрь 25, 2008, 10:25 »

должно быть так
Код
C++ (Qt)
QList<QStandardItem *> rowItems;
 
Записан
Waryable
Гость
« Ответ #2 : Ноябрь 25, 2008, 10:30 »

spirit, благодарю.
Хочу исправиться: компилятор начинал ругаться не на последнюю строку, а на rowItems.insert(nCol, curItem);
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.122 секунд. Запросов: 18.