データベースからデータをロードする Load というクラスが 1 つあります。もう 1 つのクラスは、テーブルにデータを表示することです。関数で QSqlQueryModel を返しています。これは、コンパイルできなかったため、現時点では基本的なものです。
QSqlQueryModel PersistenceAdapter::loadServerList(){
login();
cout<<"Loading data"<<endl;
QSqlQueryModel model = new QSqlQueryModel();
logout();
return model;
}
ヘッダーファイルで次のように定義します。
QSqlQueryModel loadServerList();
他のクラスでは、次のように受け取ります。
setServersList(PersistenceAdapter.loadServerList());
これの定義は次のとおりです。
void MainWindow::setServersList(QSqlQueryModel serverdata) {
//this->servers = serverdata;
//this->amodel->addData(serverdata);
}
エラーは次のとおりです。
PersistenceAdapter.cpp:66:48: エラー: 'QSqlQueryModel*' から非スカラー型 'QSqlQueryModel' への変換が要求されました /usr/include/qt4/QtCore/qabstractitemmodel.h: コピー コンストラクター 'QSqlQueryModel::QSqlQueryModel(const QSqlQueryModel&) 内': /usr/include/qt4/QtCore/qabstractitemmodel.h:360:5: エラー: 'QAbstractTableModel::QAbstractTableModel(const QAbstractTableModel&)' はプライベートです /usr/include/qt4/QtSql/qsqlquerymodel.h:59:20:エラー: このコンテキスト内 PersistenceAdapter.cpp: メンバー関数 'QSqlQueryModel PersistenceAdapter::loadServerList()': PersistenceAdapter.cpp:70:12: 注: 合成されたメソッド 'QSqlQueryModel::QSqlQueryModel(const QSqlQueryModel&)' がここで最初に必要です
誰かがそれで私を助けることができれば感謝します...