Hej,
Potrzebuje zrobić treeview w następującej postaci: Root ma childa, child będzie miało wsłasnego childa, a ten 2 child może mieć swoje childy. Mam taką klasę:
class Item
{
public:
Item(QString Root, QString Des, QVector<QString> ch_f, QVector<QString> ch_s, QVector<QString> ch_t);
QString getRoot();
QString getDescription();
QVector<QString> getChild_first();
QVector<QString> getChild_second();
QVector<QString> getChild_third();
private:
QString root;
QString description;
QVector<QString> child_first;
QVector<QString> child_second;
QVector<QString> child_third;
};
Itemy trzymam w QVector<Item>. Mam takie metody:
void MainWindow::addItems(QVector<Item> items)
{
for(int i=0;i<items.size();i++)
{
addRootAndChild(items.at(i));
}
}
void MainWindow::addRootAndChild(Item item)
{
QTreeWidgetItem *itm = new QTreeWidgetItem(ui->treeWidget);
itm->setText(0,item.getRoot());
itm->setText(1,item.getDescription());
ui->treeWidget->addTopLevelItem(itm);
for(int i=0;i<item.getChild_first().size();i++)
{
setFirstChild(itm, item.getChild_first().at(i));
}
}
void MainWindow::setFirstChild(QTreeWidgetItem *parent, QString child_first)
{
QTreeWidgetItem *itm = new QTreeWidgetItem();
itm->setText(0, child_first);
parent->addChild(itm);
setSecondChild(????) //???????
}
Nie wiem jak sobie poradzić z dodaniem childa do childa.