Comment puis-je ajouter une case à cocher/bouton radio à QTableWidget
Comment puis-je ajouter une case à cocher/radiobutton/combobox à un QTableWidget ou à un QListWidget?
25
demandé sur
Cœur
2011-03-20 18:09:50
2 réponses
pour une case à cocher en utilisant l'élément setCheckState la méthode devrait faire ce que vous avez besoin à la fois pour les widgets de liste et de table. Voir si le code ci-dessous serait travailler pour vous:
widget List:
QListWidgetItem *item0 = new QListWidgetItem(tr("First"), listWidget);
QListWidgetItem *item1 = new QListWidgetItem(tr("Second"), listWidget);
item0->setCheckState(Qt::Unchecked);
item1->setCheckState(Qt::Checked);
widget de Table:
QTableWidgetItem *item2 = new QTableWidgetItem("Item2");
item2->setCheckState(Qt::Checked);
tableWidget->setItem(0, 0, item2);
Vous pouvez utiliser les délégués ( QItemDelegate) pour les autres types de widgets de l'éditeur, l'exemple est ici:Spin Box Délégué Exemple.
je espérons que cette aide.
19
répondu
serge_gubenko
2018-05-02 12:34:23
Il y a deux méthodes:
void QTableWidget::setCellWidget ( int row, int column, QWidget * widget )
et
void QListWidget::setItemWidget ( QListWidgetItem * item, QWidget * widget )
ils permettent d'insérer n'importe quel widget et autres contrôles qui héritent QWidget. Case à cocher / bouton radio / combobox héritent de QWidget
.
47
répondu
Pie_Jesu
2012-01-16 20:01:41