Domanda

Come posso rimuovere un elemento da QListView ?Per QComboBox è removeItem ma non riesco a trovare una funzione equivalente per QListView.

Uso di Pyqt4.

È stato utile?

Soluzione

In QListWidget è possibile rimuovere direttamente con takeAt(), ma non in QListView (leggi il modello QT / View).Dovresti usare il widget a meno che tu non abbia bisogno del tuo modello.Se QListView è ciò che desideri quindi ottenere il modello e rimuovi, I.e. qListView.model().removeRow(row)

Altri suggerimenti

Dovresti usare un modello model = QStandardItemModel().Quindi, questo modello dovrebbe essere assegnato a QListView listView.setModel(model).Quindi, è possibile lavorare direttamente nel modello model.removeRow(row) per la rimozione, standardItem = model.item(row) per ottenere il valore, model.insertRow(0, standardItem) per l'inserimento nella prima posizione.Puoi anche vedere altre funzioni aggiuntive per lavorare con i modelli in qdndarditemmodel class

Dovresti usare il modello, non visualizzare.

Vedi https://doc.qt.io/qt-4.8/qabstractactitemmodel.html # Removerew

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top