Indeksowanie QTreeView

0

Hej, mam pewien problem. Otóż posiadam QTreeView dla której piszę model:

void ListDialog::setModel()
{

    QStandardItemModel* model = new QStandardItemModel();

    QStandardItem *zwierzeta = new QStandardItem("Zwierzeta");
    model->appendRow(zwierzeta);


    for(int i = 0; i<10; i++) {

        QStandardItem *item = new QStandardItem(netlist.at(i));
        item->setFlags(item->flags() & ~Qt::ItemIsEditable);
        zwierzeta->appendRow(item);

    }
    QStandardItem *szkola = new QStandardItem(QString::fromLocal8Bit("Szkoła"));
    model->appendRow(szkola);

    for(int i = 10; i<28; i++) {


        QStandardItem *item2 = new QStandardItem(netlist.at(i));
        item2->setFlags(item2->flags() & ~Qt::ItemIsEditable);
        szkola->appendRow(item2);
    }


    ui->treeView->setModel(model);


} 

netlist jest typu QStringList;

Otóż jeśli następnie chcę uzyskać indeks bieżącego wiersza jako int:

    QModelIndex index = ui->treeView->currentIndex();
    int row = index.row(); 

sprawa się sypie. Bo np. pierwszy element z kategorii szkoła ma indeks 0, a nie 10. Wiecie jak temu zaradzić?

1

No i tak ma być. Za to ten element ma parent'a "Szkoła" o indeksie 1.

0

Ah, faktycznie. Dziękuję Ci bardzo ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1