Здравствуйте. Имеется проблема: есть некая форма, на которой находиться QTreeWidget. При создании главного окна происходит заполнение из базы данных (Sqlite 3, при чем баз несколько). При этом происходит создание объектов собственных классов.
// собственный класс
class disciplines
{
private:
QString shortName;
QString longName;
QString prepod;
QString dolgnost;
QString data;
test finTest;
QTreeWidgetItem dI;
public:
disciplines( QString sN, QString lN, QString p, QString d, QString dataC, test t, QTreeWidgetItem as )
: shortName(sN), longName(lN), prepod(p), dolgnost(d), data(dataC), finTest(t), dI(as) {}
В MainWindow.cpp создается указатель на массив этих объектов, которые создаются при построения дерева. Дальше мне требуется при клике по нужному итему выводить на экран содержимое его полей. Нечто вроде этого:
void MainWindow::on_treeWidget_itemClicked(QTreeWidgetItem* item, int column)
{
if (item == treeItem)
{
ui->shortNameEdit->setText(disc[2]->returnShortName());
ui->LongNameEdit->setText(disc[2]->returnLongName());
ui->dolgnostEdit->setText(disc[2]->returnDolgnost());
ui->prepodEdit->setText(disc[2]->returnPrepod());
ui->dateEdit->setText(disc[2]->returnDate());
}
}
Где treeItem - элемент дерева. Проблема в том, что выводит информацию только у последнего созданного элемента(т.к. они создавались в цикле). Может у кого то возникнут идеи, что делать.
З.Ы. извините за косноязычное объяснение