Sto usando il modello Qt/view framework. Quando resetto i dati nel modello, devo resettare il modello per consentire anche l'aggiornamento delle viste. Come farlo? Ho trovato un segnale modelReset(QPrivateSignal);
nel QAbstractItemModel, è questo il modo di risolverlo? Come emettere il segnale? Grazie.Come resettare il modello in Qt?
risposta
Si chiama beginResetModel()
prima di ripristinare i dati, quindi endResetModel()
una volta terminato. Il endResetModel()
emette il segnale privato.
Grazie, l'ha fatto. – Borzh
Come si può vedere here, il metodo preferito è utilizzare le funzioni beginResetModel()
e endResetModel()
che circondano il codice di ripristino nella sottoclasse del modello.
Questo dovrebbe gestire l'emissione del segnale in modo appropriato.
Alcune delle sottoclassi qabstractitemmodel potrebbe consentire di utilizzare model.removeRows(0,model.rowCount())
(altri richiederebbe di implementare da soli)
- 1. Come resettare il file.stream in flask/werkzeug?
- 2. Come resettare il simulatore iPhone
- 3. Come resettare $ sporco in forma
- 4. Come resettare il repository git "locale"?
- 5. Come resettare il campo di inserimento? jQuery
- 6. Come resettare JSESSIONID
- 7. Come resettare un DispatcherTimer?
- 8. Come posso resettare table.DefaultView.RowFilter?
- 9. Come resettare un dizionario
- 10. Come resettare le migrazioni in Django 1.7
- 11. Come posso resettare una porta in MacPorts?
- 12. Come posso resettare lo stdin in Haskell?
- 13. Come resettare par (mfrow) in R
- 14. Come resettare/riavviare viewcontroller in Swift?
- 15. Come resettare un timer in C#?
- 16. Come "resettare" un elemento ReactJS?
- 17. Come resettare una password utente in hudson?
- 18. Come resettare NSTimer? codice rapido
- 19. Come resettare prestazioni personalizzato contatore
- 20. Come resettare lo stato dell'animazione?
- 21. Modello di rilegatura a Qt TableView
- 22. Modello PRECOMPILED_HEADER e sottodirectory su Qt
- 23. Errore Qt "indici modello persistenti corrotti" perché?
- 24. Annulla "git resettare --merge"
- 25. Impossibile resettare selezionare funziona
- 26. QT - Come disattivare il pulsante
- 27. Spring Security: come posso resettare SPRING_SECURITY_LAST_EXCEPTION.message?
- 28. Come resettare UIPickerView all'indice: 0, iPhone
- 29. MVC e Oggetto Observer modello in C++ e QT
- 30. Come posso resettare una sequenza factory_girl?
Vale la pena di ricordare che ci sono altri metodi che aiutano a aggiornare le viste. Tutto dipende da quali modifiche sono state apportate. Il ripristino del modello è utile quando si eseguono grosse trazioni nel modello. Esiste 'beginInsertRow',' beginMoveRows', 'beginRemoveRows'. Tutti questi metodi si applicano anche alle colonne. Quindi, se stai per eseguire piccole modifiche, non utilizzare 'beginResetModel' perché ricostruirà l'intero modello in vista invece di applicare piccole modifiche alla vista. –