Ich verwende Qt-Modell/View-Framework. Wenn ich die Daten im Modell zurücksetze, muss ich das Modell zurücksetzen, damit auch die Ansichten aktualisiert werden. Wie es geht? Ich habe ein Signal modelReset(QPrivateSignal);
im QAbstractItemModel gefunden, Ist das der Weg, es zu lösen? Wie wird das Signal ausgesendet? Vielen Dank.Wie man das Modell in Qt zurücksetzt?
10
A
Antwort
11
Sie rufen beginResetModel()
, bevor Sie Ihre Daten zurücksetzen, und dann endResetModel()
, sobald Sie fertig sind. Die endResetModel()
sendet das private Signal aus.
+0
Danke, das hat es getan. – Borzh
2
Wie Sie sehen here, ist die bevorzugte Methode, die und endResetModel()
Funktionen rund um Ihren Reset-Code in Ihrer Modell-Unterklasse zu verwenden.
Dies sollte die korrekte Ausgabe des Signals behandeln. Einige der QAbstractItemModel Subklassen
könnte Ihnen ermöglichen, model.removeRows(0,model.rowCount())
(andere müssten Sie es selbst zu implementieren) zu verwenden
Verwandte Themen
- 1. Wie man Werte asynchron zurücksetzt
- 2. Wie man viewcontroller in Swift zurücksetzt/neustart?
- 3. Wie man Spuränderungen in Visual Studio zurücksetzt?
- 4. Wie man Effekt in javafx zurücksetzt?
- 5. Wie man Filter in Fiddler zurücksetzt?
- 6. Wie vermeidet man, dass MVC ExceptionContext.Result zurücksetzt?
- 7. Wie man ein Modell auf eine Schaltfläche zurücksetzt Klicken Sie in angularjs
- 8. Warum die Pipe das aktuelle Arbeitsverzeichnis zurücksetzt?
- 9. Kudan in Unity: Wie man markerloses Tracking stoppt oder zurücksetzt?
- 10. Wie man Formkörper in Bootstrap-Modal-Box zurücksetzt?
- 11. Qt, QListView Modell
- 12. Wie durchläuft man das JSON-Modell?
- 13. Django: wie man das Modell gut übersetzt
- 14. Qt-Modell für Chat-Widget
- 15. UITableViewCell - wie man den Inhalt vor der Wiederverwendung zurücksetzt
- 16. Wie man DataGridViewCellStyle auf seinen geerbten Wert zurücksetzt
- 17. Wie man einen unnötigen "git reset HEAD ~ 1" zurücksetzt
- 18. EasyMock - wie man Mock zurücksetzt aber Erwartungen behält?
- 19. Binding Modell zu Qt TableView
- 20. Wie man das Ember-Modell regelmäßig aktualisiert (zB in setInterval)?
- 21. Wie man das gesamte Keras-Modell in theano-Funktion umwandelt
- 22. Wie initialisiert man das Modell mit Window.dimensions in Elm?
- 23. Wie man ein Glut-Datenmodell "zurücksetzt", wenn es gerade schmutzig ist
- 24. Wie man Modell
- 25. Qt: Wie benutzt man Leptonica?
- 26. Wie erkennt man USB-Speicher in Qt?
- 27. Wie man ausgesendete Signale in QT verfolgt?
- 28. Wie man QSplitter in Qt Designer verwaltet
- 29. Wie kann man ein konstantes schreibgeschütztes Modell/eine reine Architektur in Qt erstellen?
- 30. Das Modell in MVC
wert zu erwähnen, dass es auch andere Methoden, die Ansichten helfen zu aktualisieren. Alles hängt davon ab, welche Änderungen vorgenommen werden. Das Zurücksetzen des Modells ist nützlich, wenn Sie große Veränderungen im Modell durchführen. Es gibt 'beginInsertRow',' beginMoveRows', 'beginRemoveRows'. Alle diese Methoden gelten auch für Spalten. Wenn Sie also kleine Änderungen durchführen wollen, verwenden Sie 'beginResetModel' nicht, da es das gesamte Modell in der Ansicht wiederherstellt, anstatt kleine Änderungen in der Ansicht anzuwenden. –