2010-10-15 8 views
4

J'ai créé un QWidget (Parent). à l'intérieur du widget parent j'ai créé un autre QWidget (Enfant). Dans le temps d'exécution j'ai besoin de retirer le widget enfant. comment faire ça?Comment supprimer un widget d'un autre Qwidget?

Je n'utilise aucune disposition. Je mets directement dans le Widget Parent.

S'il vous plaît Aidez-moi à résoudre ce problème.

+0

j'ai trouvé la réponse: http://stackoverflow.com/questions/3940409/how-to-clear-all-the-widgets-in-parent-widgets – saravanan

Répondre

5

Si vous ajoutez le widget avec par exemple:

QWidget *w = new QWidget(parent); 

... alors vous pouvez le supprimer avec:

delete w; 

Une autre approche serait de cacher juste:

w->hide(); 
+0

mais je ne ' Je connais le nom du widget enfant (en cours d'exécution, je crée également un widget enfant). comment le trouver et le supprimer ?, – saravanan

+0

const QObjectList & children() const. C'est la méthode d'un QObject. Vous pouvez utiliser pour obtenir les enfants. Ou vous pouvez simplement stocker un pointeur sur votre widget (celui que vous voulez supprimer) – Andrew

Questions connexes