ich bin neu in Sachen Qt. In C++ habe ich einige verschüttete Kentnisse aus dem Studium. Trotzdem möchte ich mich jetzt mal an einem kleinen Datenbankprojekt versuchen.
Dazu gleich die erste Frage. Ich habe mir überlegt, wie ich den Zugriff auf Spalten komfortabler machen kann. Meine Idee dazu möchte ich hier gerne Diskutieren und bin auch für Alternativvorschläge offen.
Ich leite die Klasse QSqlRecord ab und füge Funktionen hinzu, die mir eine bestimmt Spalte zurückliefern. Etwa so:
Code: Alles auswählen
class myRec : public QSqlRecord {
public:
int i;
myRec(){
i=5;
};
QString getSpalte0(){
return value(0).toString();
}
QString getSpalte1(){
return value(1).toString();
}
QString getSpalte2(){
return value(2).toString();
}
}Code: Alles auswählen
class myModel : public QSqlQueryModel {
public:
myRec record(int row) {
QSqlRecord qr = QSqlQueryModel::record(row);
return *static_cast<myRec*> (&qr);
}
}Die Verwendung von static_cast ist wohl eher nicht so optimal. Z.B. wird der Konstruktor von myRec nicht aufgerufen und "i" hat einen beliebigen Wert.
Wie kann ich das eleganter lösen?
Was haltet Ihr von dem Konzept? Das schöne ist m.E., daß man in myRec auch entsprechende Set-Methoden implementieren kann, die eine Gültigkeitsprüfung vornehmen.
Ich bin gespannt auf Eure Kommentare
Wowbagger