Suche in TreeView
Verfasst: 7. Dezember 2011 16:29
Hallo Allerseits!
Ich hab mal ne Frage zu dem TreeView: Wie kann ich dort vernünftig suchen?
Das Problem was ich habe ist, dass er zwar die Items unterhalb des Models mit findItems() findet, aber nicht die Objekte unter den Items. Wie kann ich das denn bewerkstelligen? Ich habe unten mal meinen Code hingeschrieben. Und bitte seit gnädig. Programmieren ist nicht unbedingt meine Stärke.
Für Tipps, Tricks und/oder Hinweise bin ich sehr dankbar.
Gruß,
Benjamin
Ich hab mal ne Frage zu dem TreeView: Wie kann ich dort vernünftig suchen?
Das Problem was ich habe ist, dass er zwar die Items unterhalb des Models mit findItems() findet, aber nicht die Objekte unter den Items. Wie kann ich das denn bewerkstelligen? Ich habe unten mal meinen Code hingeschrieben. Und bitte seit gnädig. Programmieren ist nicht unbedingt meine Stärke.
Für Tipps, Tricks und/oder Hinweise bin ich sehr dankbar.
Gruß,
Benjamin
Code: Alles auswählen
void TabWidget::element_fahrerliste(QStandardItem* root, QString* bezeichnung0, QString* bezeichnung1, QString* bezeichnung2, QString* id)
{
/*
root := Gibt den Knoten innerhalb der Fahrerliste an
bezeichnung0,1,2 := Geben die unter Punkte an
*/
// QList<QStandardItem*> suche = _model->findItems("123", Qt::MatchExactly);
// int anzahl = suche.count();
int anzahl = 0;
// Wenn Item Vorhanden, dann hänge neuen Fahrer an bestehendes Item, wenn nicht erstelle neues Item.
if(anzahl == 0){
ui->angetriebene_achsen->insert("nö");
}else
{
ui->angetriebene_achsen->insert("huhu");
}
QStandardItem *tmp_bez0 = new QStandardItem(*bezeichnung0);
tmp_bez0->setEditable(false);
QStandardItem *tmp_bez1 = new QStandardItem(*bezeichnung1);
tmp_bez1->setEditable(false);
QStandardItem *tmp_bez2 = new QStandardItem(*bezeichnung2);
tmp_bez2->setEditable(false);
QStandardItem *tmp_id = new QStandardItem(*id);
tmp_id->setEditable(false);
QList<QStandardItem*> spalte1, spalte2, spalte3;
spalte1.append(tmp_bez1);
spalte2.append(tmp_bez2);
spalte3.append(tmp_id);
tmp_bez0->appendColumn(spalte1);
tmp_bez0->appendColumn(spalte2);
tmp_bez0->appendColumn(spalte3);
root->appendRow(tmp_bez0);
}