I've returned to programming after a while and so I'm rusty. I previously used Qdevelop and Qt 4.5 designer. I'm writing and designing another app in QtCreator. I decided to ease myself back in by getting my file -quit code to work. I copied and pasted the code over from my other app where it works. Surprise surprise it didn't work in the new one. By searching around I've managed to reduce the error to one. I've included CloseEvent in my mainwindow.cpp file and put a foward class declaration in my manwindow.hpp file something I did not have to do previously.
Code:
#ifndef QTSOLARDATAMAINWINDOW_H #define QTSOLARDATAMAINWINDOW_H #include <QMainWindow> class QCloseEvent; // foward declaration of class namespace Ui { class QtSolarDataMainWindow; } { Q_OBJECT public: ~QtSolarDataMainWindow(); protected: private: Ui::QtSolarDataMainWindow *ui; private slots: }; #endif // QTSOLARDATAMAINWINDOW_H
and
Code:
include "qtsolardatamainwindow.h" #include "ui_qtsolardatamainwindow.h" #include <QCloseEvent> ui(new Ui::QtSolarDataMainWindow) { ui->setupUi(this); // signals and slots on constructor // file menu connect(action_Quit_Ctrl_Q, SIGNAL(triggered()), this, SLOT(close())); } QtSolarDataMainWindow::~QtSolarDataMainWindow() { delete ui; } { // writeSettings(); event->accept(); }
I'm absolutely sure my signal has the right name that's its object name in the creator form designer. But its this line that is causing trouble
qtsolardatamainwindow.cpp: In constructor ‘QtSolarDataMainWindow::QtSolarDataMainWindo w(QWidget*)’:
qtsolardatamainwindow.cpp:16:13: error: ‘action_Quit_Ctrl_Q’ was not declared in this scope
Where am I going wrong and just out of interest why the change? Thankyou very much.