изтрийте qwidget от оформлението QT

Имам qwidget (ще го наречем qwidget1) вътре в оформление на друг qwidget (ще го наречем qwidget2), искам да изтрия всичко, което е в оформлението на qwidget2: Бих искал да изчистя оформлението, така че вече няма нищо в него .. това, което мога да направя досега, е да премахна напълно qwidget2, като направя:

void QCell::deleteMyChildren(){
   delete this;
}

но премахва самия qwidget2.. това не е, което искам. Моля, помогнете ми да премахна елементите, които са в оформлението.


person Ben    schedule 29.01.2013    source източник
comment
Само за да изясня, тъй като имам подобен проблем, qwidget2 представлява ли се от QCell?   -  person thnkwthprtls    schedule 25.03.2014


Отговори (1)


просто влезте в елементите в оформлението и премахнете елемента от оформлението, след което изтрийте елемента:

void QCell::deleteMyChildren() {
    while (count() > 0) {
        QLayoutItem * item = takeAt(0);
        delete item;
    }
}
person TheBootroo    schedule 29.01.2013