So wählen Sie eine Zeile in einem QListView
Ich bin immer noch am kämpfen mit QListView, ich versuche zur Auswahl einer bestimmten Zeile in der Ansicht, und ich kann nicht herausfinden, wie dies zu tun.
Fand ich eine ähnliche Frage auf StackOverflow, die empfiehlt die Verwendung des createIndex()
- Methode des Modells, aber diese Methode ist geschützt (vielleicht ist es der öffentlichkeit aber nicht mehr), so dass nicht für mich arbeiten. Jede Anregung?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie den index von etwas einfach mitgehen
Dann können Sie anrufen
setCurrentIndex(indexOfTheCellIWant)
wie bruno sagte in seiner Antwort.Wenn das Modell enthält nur eine Liste der standard-Elemente, die im Gegensatz zu einer Baumstruktur, dann ist es sogar noch einfacher. Denn wir können davon ausgehen, dass das Element einem root-Element, - keine Eltern.
Mit einer Baumstruktur ist es ein wenig schwieriger, denn wir können nicht nur geben Sie eine Zeile und eine Spalte, müssen wir angeben, diese im Hinblick auf ein Elternteil. Wenn Sie brauchen, um wissen über diesen Teil lass es mich wissen und ich werde mehr erklären.
Nur noch eine Sache zu beachten. Die Auswahl basiert auf Zellen, die nicht wirklich Zeilen. Also, wenn Sie wollen, um sicherzustellen, dass, wenn der Benutzer selektiert eine Zelle (oder du machst es über den code), dass die ganze Zeile ausgewählt, die Sie tun können, dass durch die Einstellung der "selectionBehavior" auf das selbst.
Können Sie
QAbstractItemView::setCurrentIndex ( const QModelIndex & index )