Hallo Zusammen
Ich habe in einem QTreeWidget Daten in einem Datensatz geändert und in die dahinter liegende SQLite Datenbank zurückgeschrieben.
Jetzt möchte ich die geänderten Daten im TreeWidget auch anzeigen.
Aktuell mache ich den Baum leer und lese ihn erneut ein. Klappt alles prima. Leider ist nach dem Neuaufbau kein Datensatz mehr als Current markiert. Wie kann ich einen Datensatz suchen und Current setzen? Ein Feld der Daten in dem TreeWidget enthält eine eindeutige ID. Kann ich danach suchen und den gefundenen Datensatz (der auf jeden Fall existiert) als Current markieren?
Danke
Thomas
[gelöst] QTreeWidget Zeile suchen und als current setzen
[gelöst] QTreeWidget Zeile suchen und als current setzen
Zuletzt geändert von Tomaxx am 3. März 2018 09:57, insgesamt 1-mal geändert.
-
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: QTreeWidget Zeile suchen und als current setzen
Die selektieren Items bekommt man mittels QTreeWidget::selectedItems()
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: QTreeWidget Zeile suchen und als current setzen
Nein, ich meinte wie ich selber einen Eintrag finde und auf Current setze.
Ich habs gelöst:
Ich habs gelöst:
Code: Alles auswählen
QString gesuchter_text = "Suchtext";
qint32 suchspalte = 3;
QList<QTreeWidgetItem *> itemList = ui->baumwidget->findItems(gesuchter_text, Qt::MatchRecursive, suchspalte);
if (itemList.size() > 0){
ui->baumwidget->setCurrentItem(itemList[0]);
}
-
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: [gelöst] QTreeWidget Zeile suchen und als current setzen
Ah, ok. Ja die Lösung ist korrekt. Prinzipiell kannst Du auch selbst den Baum durchlaufen. Mittels QTreeWidgetItem::childCount() und QTreeWidgetItem ::child().
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung