Sorry, I made topic there also but in newbie forum nobody even looked :/ I am making GUI for my database. But the problem is that is that I cant see my database's table :/ can anyone tell me the problem? :)
Code:
#ifndef CUSTOMIZEGAMETABLE_H #define CUSTOMIZEGAMETABLE_H #include <QtGui> #include <QtSql> #include "GameUpdateDialog.h" { Q_OBJECT private: QSqlQueryModel *CurrentQueryModel; QSqlRecord CurrentRecord; bool DataSourceConnected; QTableView *tableViewGameList; GameUpdateDialog *dialogUpdate; QPushButton *btnUpdate; QGridLayout *grdLayout; public: signals: void clickedUpdate(void); private slots: void clickedButtonUpdate(void); public slots: void connectData(void); void changeData(void); }; #endif // CUSTOMIZEGAMETABLE_H
Code:
#include "customizegametable.h" { CurrentQueryModel = 0; //CurrentRecord = 0; DataSourceConnected = false; dialogUpdate = new GameUpdateDialog(this); connect(btnUpdate, SIGNAL(clicked()), this, SLOT(clickedButtonUpdate())); connect(this, SIGNAL(clickedUpdate()), dialogUpdate, SLOT(show())); grdLayout->addWidget(tableViewGameList, 0,0,1,2); grdLayout->addWidget(btnUpdate, 1,1,1,1); this->setLayout(grdLayout); } void CustomizeGameTable::clickedButtonUpdate(void) { emit changedRecord(CurrentRecord); emit clickedUpdate(); //dlgUpdate->show(); } void CustomizeGameTable::connectData(void) { DataSourceConnected = true; //emit executeQuery(tmpQuery); changeData(); qDebug() << "Emitted signal executeQuery"; } { CurrentQueryModel = parModel; if(CurrentQueryModel == 0) { qDebug() << "CurrentQueryModel == 0"; } else { qDebug() << "CurrentQueryModel != 0"; tableViewGameList->setModel(CurrentQueryModel); CurrentRecord = CurrentQueryModel->record(0); emit changedRecord(CurrentRecord); } } void CustomizeGameTable::changeData(void) { emit executeQuery(tmpQuery); }
Code:
#ifndef DATAOBJECT_H #define DATAOBJECT_H #include <QtGui> #include <QtSql> { Q_OBJECT private: QSqlDatabase dataBase; QSqlQueryModel *CurrentQueryModel; public: void initConnection(void); signals: void isOk(void); void ececutedUpdate(void); public slots: }; #endif // DATAOBJECT_H
Code:
#include "dataobject.h" { dataBase.setHostName( "localhost" ); dataBase.setDatabaseName( "Atsiskaitymas" ); dataBase.setUserName( "" ); dataBase.setPassword( "" ); if ( !dataBase.open() ) { CurrentQueryModel = 0; qDebug() << "DataBase is not open!"; } else { qDebug() << "DataBase is open"; emit isOk(); } } void DataObject::initConnection(void) { if ( !dataBase.open() ) { CurrentQueryModel = 0; qDebug() << "DataBase is not open!"; } else { qDebug() << "DataBase is open!"; emit isOk(); } } { CurrentQueryModel->setQuery(parSQLQuery, dataBase); if(CurrentQueryModel->lastError().isValid()) { qDebug() << "Klaida:"; qDebug() << CurrentQueryModel->lastError(); } else { emit ececutedQuery(CurrentQueryModel); qDebug() << "Stulpeliu ir eiluciu:"; qDebug() << CurrentQueryModel->columnCount(); qDebug() << CurrentQueryModel->rowCount(); qDebug() << "Irasas Nr. 0:"; qDebug() << CurrentQueryModel->record(0).field(0).value(); qDebug() << CurrentQueryModel->record(0).field(1).value(); qDebug() << CurrentQueryModel->record(0).field(2).value(); qDebug() << CurrentQueryModel->record(0).field(3).value(); qDebug() << CurrentQueryModel->record(0).field(4).value(); qDebug() << CurrentQueryModel->record(0).field(5).value(); } } { CurrentQueryModel->setQuery(parSQLQuery, dataBase); if(CurrentQueryModel->lastError().isValid()) { qDebug() << "Klaida:"; qDebug() << CurrentQueryModel->lastError(); } else { emit ececutedUpdate(); } }
Code:
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QtGui> #include "MainWidget.h" #include "customizegametable.h" #include "DataObject.h" { Q_OBJECT private: void createActions(); void createMenus(); QMenu *newMenu; QMenu *helpMenu; QAction *exitAct; QAction *aboutAct; MainWidget *mainWidget; DataObject *dataObject; CustomizeGameTable *customizeGameTable; public: signals: private slots: void about(); public slots: }; #endif // MAINWINDOW_H
Code:
#include "mainwindow.h" #include <QtSql> { mainWidget = new MainWidget(this); dataObject = new DataObject(this); customizeGameTable = new CustomizeGameTable(this); this->setCentralWidget(mainWidget); connect(dataObject, SIGNAL(isOk()), customizeGameTable, SLOT(connectData())); connect(dataObject, SIGNAL(ececutedQuery(QSqlQueryModel*)), customizeGameTable, SLOT(processQuery(QSqlQueryModel*))); connect(dataObject, SIGNAL(ececutedUpdate()), customizeGameTable, SLOT(changeData())); createActions(); createMenus(); setWindowTitle("GUI"); setMinimumSize(200,300); resize(800,600); } void MainWindow::about() { } void MainWindow::createActions() { // exitAct->setStatusTip("Exit aplication"); connect(exitAct, SIGNAL(triggered()),this,SLOT(close())); // aboutAct->setStatusTip("Show info about application "); connect(aboutAct,SIGNAL(triggered()),this,SLOT(about())); } void MainWindow::createMenus() { newMenu = menuBar()->addMenu("New"); newMenu->addAction(exitAct); helpMenu = menuBar()->addMenu("Help"); helpMenu->addAction(aboutAct); }