J'ai fait quelque chose de similaire avec plusieurs conteneurs QQueue remplis d'éléments QLabel et QLineEdit. Juste ajouter et supprimer des éléments lorsque l'utilisateur désire plus ou moins. Pourrait combiner cela avec un QGridLayout et mettre les choses où vous avez besoin. Je ne sais pas si c'est la meilleure façon, mais ça marche bien pour moi.
http://doc.trolltech.com/4.4/qqueue.html
QQueue<QLineEdit *> linedit;
QGridLayout *gridboxLayout;
gridboxLayout= new QGridLayout();
linedit.enqueue(new QLineEdit());
gridboxLayout->addWidget(linedit.last(),row,column);
this->setLayout(gridboxLayout);
Tu vas besoin d'ajouter des trucs pour garder la trace des lignes, des colonnes et des éléments et tel, mais qui est la configuration de base. Continuez à ajouter de nouveaux éléments à la QQueue et insérez-les dans une nouvelle ligne de la grille. Vous pouvez même les référencer par ligne et les supprimer plus tard.
L'autre moyen facile de faire cela, qui fonctionnera avec le concepteur, si vous avez un nombre maximum raisonnable d'éléments, est de simplement construire le tout et cacher les widgets que vous ne voulez pas voir jusqu'à ce que vous avez besoin leur.
QQueue ^.^Du plaisir à dire. – mpen