Hallo ,
ich habe folgendes Problem:
ich verwende ein QSqlTableModel zusammen mit meiner Datenbank.
Meine angezeigte Tabelle besteht aus insgesamt 5 Feldern, davon möchte ich allerdings nur 2 anzeigen lassen, die anderen sollen bei jedem Item gespeichert werden, um später verwendet werden zu können. Was muss ich dazu tun? SetData vom QSqlTableModel überschreiben? Bzw wie werden dem Model die Daten der Tabelle mitgeteilt? Ich finde leider keine Erklärung dazu.
mfg
Problem mit QSqlTableModel
Ok vielen Dank ! Ich habe es mal an einem kleinen Beispiel getestet, die Daten sind vorhanden und man kann auf sie zugreifen.
Allerdings habe ich noch ein Problem beim Zugriff auf die Daten nach einem drag&drop Vorgang. Muss ich dazu die MimeData-Methode überschreiben? Scheinbar wird entweder der nicht angezeigte Teil nicht übergeben oder ich greife noch falsch auf die Werte zu (was ich vermute).
Hier mal der Ausschnitt zum Decodieren der Dropped Data :
Vllt kann mir da jemand helfen. Bin für jede Hilfe dankbar 
Allerdings habe ich noch ein Problem beim Zugriff auf die Daten nach einem drag&drop Vorgang. Muss ich dazu die MimeData-Methode überschreiben? Scheinbar wird entweder der nicht angezeigte Teil nicht übergeben oder ich greife noch falsch auf die Werte zu (was ich vermute).
Hier mal der Ausschnitt zum Decodieren der Dropped Data :
Code: Alles auswählen
QDataStream stream(&itemData , QIODevice::ReadOnly);
QVector<QMap<int, QVariant> > data;
while (!stream.atEnd()) {
int r, c;
QMap<int, QVariant> v;
stream >> r >> c >> v;
data.append(v);
}