QTreeWidget(Item): Ueberpruefen ob Item ein TopLevelItem ist

Alles rund um die Programmierung mit Qt
Antworten
Elbrecht
Beiträge: 1
Registriert: 16. August 2010 16:52

QTreeWidget(Item): Ueberpruefen ob Item ein TopLevelItem ist

Beitrag von Elbrecht »

Hallo,

in meinem Programm wird ein Eintrag mit verschiedenen Subeintraegen in einem QTreeWidget dargestellt.

Ueber einen Remove-Button sollen die Eintraege nun geloescht werden.

Aber: Selbst wenn nur ein Child-Item selektiert ist, soll das ganze TopLevelItem samt seiner Childs geloescht werden.

QTreeWidget::selectedItems() gibt mir nun die selektierten Items zurueck.
Wie ueberpruefe ich, ob das Item ein TopLevelItem ist?

Viele Gruesse,
Florian

P.S.: Was passiert, wenn ich ein QTreeWidgetItem zweimal mit delete loesche?
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: QTreeWidget(Item): Ueberpruefen ob Item ein TopLevelItem

Beitrag von franzf »

Elbrecht hat geschrieben:Wie ueberpruefe ich, ob das Item ein TopLevelItem ist?
parents zählen?
P.S.: Was passiert, wenn ich ein QTreeWidgetItem zweimal mit delete loesche?
Probiers doch aus :P

Code: Alles auswählen

int main() {
    int* i = new int(10);
    delete i;
    delete i;
}
kompilieren (geht) und laufen lassen (geht schief).
padreigh
Beiträge: 340
Registriert: 13. Mai 2010 10:06

Beitrag von padreigh »

Code: Alles auswählen

    QTreeWidgetItem * item = treeWidgetsName->currentItem();

    while(item->parent() != 0) {item = item->parent(); }
    
    // delete item;
    // item = 0;
Patrick (QtCreator 1.3.1, Qt 4.6.3)
---
template = subdirs
Antworten