Невидимый слот в дочернем классе (No such slot)

есть следующий код:

Game.h

class Game : public QGraphicsView {
public:
    Game(QWidget * parent = NULL);
    void showSplashScreen();
    //void mousePressEvent(QMouseEvent * event);

QGraphicsScene * scene;
TileMap * map;
int health;
int wave;
int money;

public slots:
    void showMainMenu();
    void chooseLevelMenu();
    void start();
};

Часть Game.cpp

...
void Game::showSplashScreen() {
setBackgroundBrush(QBrush(QImage(":/img/img/SplashScreen.jpg")));
QTimer::singleShot(3000, this, SLOT(showMainMenu()));
}
...

По задумке showSplashScreen() через три секунды должен вызывать showMainMenu(), но все ломается с ошибкой

QObject::connect: No such slot QGraphicsView::showMainMenu() in ..\Game.cpp:17

Как и было предложено ранее на подобные вопросы, я попытался добавить Q_OBJECT, но все опять сломалось, на этот раз с ошибкой

D:\User\Desktop\Defender\Game.cpp:8: error: 'QObject' is an ambiguous base of 'Game'

Как мне решить эту проблему? Заранее спасибо)


Ответы (0 шт):