Seite 1 von 1
QTableView Zugriff auf Elemente
Verfasst: 25. Mai 2009 16:25
von ifisi
Hallo Zusammen,
ich sitze gerade an dem Problem das ich nicht auf einzelne Elemente in meiner TableView zugreifen kann. Ich fülle meine tableview über ein QueryModel und jetzt möchte ich den Wert welchen ich selektiert habe darauf zugreifen und mit dem weiter arbeiten!
Gruß
Fisi
Verfasst: 25. Mai 2009 18:50
von upsala
Dann empfehle ich dir als erst mal:
Model/View Programming
Verfasst: 26. Mai 2009 11:26
von ifisi
Ok, ist es doch nicht so trivial! Danke für deine schnelle Antwort und dem Link.
Ich bin von einer Funktion getItemText(row,column) ausgegangen;-)
Gruß
fisi
Verfasst: 26. Mai 2009 11:33
von AuE
es ist trivial....lesen

Verfasst: 26. Mai 2009 12:14
von ifisi
da hast du recht!
Hab das so versucht, ich bekomme immer einen leeren String zurück wenn ich das so mache. Wo habe ich mich verlesen?
Code: Alles auswählen
QAbstractItemModel * model = ui->tableView->model();
int row =ui->tableView->currentIndex().row();
QString text= model->index(row,0,ui->tableView->currentIndex()).data(QT::DisplayRole).toString();
Verfasst: 26. Mai 2009 12:25
von AuE
Du bauchst dir nicht nochmal speicher holen...du hast doch schon ein Modell!!
EDIT.... Warum machst du es dir so schwer..... model->Data will doch nen QModelIndex.... den liefert dir auch tableView.currentIndex.....
Code: Alles auswählen
QString text = ui.tableView->model()->data(ui.tableView->currentIndex()).toString();
Verfasst: 26. Mai 2009 12:55
von ifisi
Danke!
Woher bekomme ich das QSqlQueryModel, wenn ich das von der TableView nehme hab ich ja wieder ein AbstractItemModel!
Muss ich jetzt zuerst wieder ein Query absetzen, oder gibt es da ein cleverer Trick?
Verfasst: 26. Mai 2009 13:28
von AuE
MODEL/VIEW Programming! Das Model hat die Daten der query!!!!!
Du kommst mit oben geposteten Snippet ganz einfach an die Daten deines model!
Verfasst: 26. Mai 2009 13:36
von ifisi
Ich danke dir AuE, so tuts!!
Da fehlt mir beim M/V doch noch einwenig das Verständnis!
Verfasst: 26. Mai 2009 13:49
von AuE
Verfasst: 26. Mai 2009 21:34
von upsala