Come posso aggiungere una checkbox/radiobutton/combobox a un QTableWidget o un QListWidget?Come posso aggiungere una casella di controllo/pulsante radio a QTableWidget
risposta
Per una casella di controllo che utilizza il metodo setCheckState dell'articolo deve fare ciò che è necessario sia per i widget di elenco che di tabella. Vedere se il codice di seguito dovrebbe funzionare per voi: widget di
listino:
QListWidgetItem *item0 = new QListWidgetItem(tr("First"), listWidget);
QListWidgetItem *item1 = new QListWidgetItem(tr("Second"), listWidget);
item0->setCheckState(Qt::Unchecked);
item1->setCheckState(Qt::Checked);
widget di Tabella:
QTableWidgetItem *item2 = new QTableWidgetItem("Item2");
item2->setCheckState(Qt::Checked);
tableWidget->setItem(0, 0, item2);
È possibile utilizzare delegati (QItemDelegate) per altri tipi di widget del redattore, esempio è qui: Spin Box Delegate Example.
Spero che questo aiuta.
ci sono due metodi:
void QTableWidget::setCellWidget (int row, int column, QWidget * widget)
e
void QListWidget::setItemWidget (QListWidgetItem * item, QWidget * widget)
Esse permettono di inserire qualsiasi widget e altri controlli che ereditano QWidget. La casella di controllo/il pulsante di opzione/la casella combinata ereditano da QWidget
.
Accetto che sia confuso questo non è stato selezionato come risposta corretta. Non ho passato molto tempo a investigare, ma pensavo che impostare il flag controllabile su un QTableWidgetItem facesse apparire una casella di controllo, ma non è così. setCellWidget() ha funzionato, però. – Scott
come posso leggere se è selezionato o no? – Petr
dovresti controllare con 'checkbox.checkState() == 0 o == 2' uno unckecked e un altro ckecked, ho criptato con python, dovresti convertire. a -> – PersianGulf
- 1. Come posso aggiungere a livello di codice NewLines a una casella di testo di lavoro TFS?
- 2. Set QTableWidget a 0px
- 3. In pyqt, come posso aggiungere elementi in una casella combinata?
- 4. Come posso aggiungere una casella combinata usando l'helper RoR?
- 5. Come posso associare una casella di elenco a contenuti selezionati in una casella di testo?
- 6. Come posso dire a un QTableWidget di terminare la modifica di una cella?
- 7. Come posso aggiungere una variabile a console.log?
- 8. Come posso mettere a fuoco una casella di selezione selectize?
- 9. Come evidenziare una riga in QTableWidget?
- 10. WPF - aggiungere elementi statici a una casella combinata
- 11. Come aggiungere una casella di controllo in un'intestazione jQgrid
- 12. come aggiungere una casella di ricerca personalizzata nell'amministratore di django
- 13. Come aggiungere una casella di spunta a una finestra di avviso
- 14. Come aggiungere testo in una casella di testo multilinea?
- 15. Come posso aggiungere una stringa formattata a una stringa esistente?
- 16. Come posso aggiungere una barra di avanzamento a WWW :: Mechanize?
- 17. Come posso aggiungere numeri di riga a una griglia ExtJS?
- 18. come aggiungere la casella di controllo a Extjs Grid
- 19. Come aggiungere la casella di controllo Colonna a jQuery JTable?
- 20. È possibile aggiungere una casella combinata come colonna in una casella di riepilogo in VBA?
- 21. Come disabilitare un Gruppo radio fino a quando la casella di controllo è selezionata
- 22. Come posso rendere selezionabile una casella immagine?
- 23. Come posso aggiungere una casella di controllo modificabile dall'utente in QTableView utilizzando solo QStandardItemModel
- 24. Etichettatura casella di controllo e Radio in knockout
- 25. Aggiunta di dati a QTableWidget usando PyQt4 in Python
- 26. Aggiunta di un'etichetta a una casella di testo (di programmazione)
- 27. Come aggiungere dinamicamente una nuova colonna a una tabella HTML
- 28. Creazione di una web radio
- 29. Django BooleanField come pulsanti radio?
- 30. Come posso aggiungere binari completi a una patch Mercurial?
Wow. Sorpreso che questo commento è stato selezionato come risposta corretta. Poiché l'impostazione di QListWidgetItem nello stato di controllo non equivale a "aggiungere la casella di controllo a Tabella o a Elenco". Inoltre, la creazione di delegati non è il modo di inserire tali widget in Tabella o Elenco. È usato solo per modificare le celle. –
potrebbe essere perché è ciò che l'OP voleva. E poiché la sua domanda è aperta, questa risposta è uno dei modi in cui può creare \ impostare il suo widget. Inoltre nella maggior parte dei casi si desidera che venga mostrato un controllo quando si modifica il campo non visualizzandolo. Fornire un widget alla cella tramite setCellWidget non rende questo widget parte del modello, dovresti comunque occuparti manualmente del contenuto e degli eventi del widget. –
Puoi approfondire il tuo "QList ** Widget ** e QTable ** Widget **? Impossibile delegare i delegati per loro" commenta? Entrambi i widget sono discendenti di QAbstractItemView e nulla ti impedisce di impostare delegati degli elementi per loro. L'esempio dello spinbox dal mio post funziona perfettamente con QTableWidget –