Problem QModelIndex und QTableView
Verfasst: 7. Dezember 2011 00:16
Guten Abend,
ich habe eine kurze Frage zu QModelIndex. Kurz, ich habe ein Hauptfenster, in dem im Großen und Ganzen nur ein QTableView den Inhalt einer Datenbank anzeigt. Alles soweit kein Problem. Um ganze Zeilen löschen zu können, habe ich vorweg geschrieben, dass halt immer nur ganze Zeilen markiert werden können, eigentlich auch egal, dann ein Kontextmenü erstellt und dort die Action Datensatz löschen angelegt. Klicke ich nun darauf, soll mir die entsprechende Funktion mit model->removeRow(Table->currentIndex().row()) die Zeile löschen. model ist dabei ein QSqlTableModel. Das funktioniert auch super. Habe ich allerdings keine Zeile markiert, wird Table->currentIndex().row() immer der Wert 0 zugewiesen und folglich auch dann eine Zeile gelöscht, wenn ich nichts ausgewählt habe. Kann mir da vielleicht jemand den Fingerzeig geben, wie es richtig geht?
Viele Grüße,
Marcus
ich habe eine kurze Frage zu QModelIndex. Kurz, ich habe ein Hauptfenster, in dem im Großen und Ganzen nur ein QTableView den Inhalt einer Datenbank anzeigt. Alles soweit kein Problem. Um ganze Zeilen löschen zu können, habe ich vorweg geschrieben, dass halt immer nur ganze Zeilen markiert werden können, eigentlich auch egal, dann ein Kontextmenü erstellt und dort die Action Datensatz löschen angelegt. Klicke ich nun darauf, soll mir die entsprechende Funktion mit model->removeRow(Table->currentIndex().row()) die Zeile löschen. model ist dabei ein QSqlTableModel. Das funktioniert auch super. Habe ich allerdings keine Zeile markiert, wird Table->currentIndex().row() immer der Wert 0 zugewiesen und folglich auch dann eine Zeile gelöscht, wenn ich nichts ausgewählt habe. Kann mir da vielleicht jemand den Fingerzeig geben, wie es richtig geht?
Viele Grüße,
Marcus