Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Не выводит вторые ветки TreeView
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Модель/Представление
Xantrax
Есть два класса. С помощью функций вначале отрезка кода создаю объекты и инициализирую поля классов, заношу объекты в QList.
Далее, пытаюсь разобраться с модель/представление, пишу:
#include "widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    Create_Listfabrica();
    Create_ListPodfabrica();
    model = new QStandardItemModel(list_fabric.size(),1);

    fabrica *a = 0;
    podfabrica *b = 0;
    for (int t=0; t<list_fabric.size(); ++t)
    {
        QModelIndex index;
        a = (fabrica*) &list_fabric.at(t);
        index = model->index(t,0);
        model->setData(index,a->name);

        model->insertRows(0, 4/*list_podfabric.size()*/,index);
        for(int c=0; c<list_podfabric.count(); ++c)
        {
        
                b = (podfabrica*) &list_podfabric.at©;
                model->setData(model->index(list_podfabric.count(),d,index), QString(b->name));
        }
    }
    view = new QTreeView(this);
    view->setModel(model);
    vbox = new QVBoxLayout(this);
    vbox->addWidget(view);
    setLayout(vbox);
}

Widget::~Widget()
{
}


Код не выводит второй цикл for, почему?
lanz
Пользуйтесь тэгом code (кнопка со свитком и фиолетовой стрелкой над формой редактирования).

model->setData(model->index(list_podfabric.count(),d,index), QString(b->name));

Здесь элементы добавляются в строку list_podfabric.count(). Это правильно?
По моему должно быть:
model->setData(model->index(с,d,index), QString(b->name))
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.