Qt QGraphicsSceneMouseEvent访问类型不完整

时间:2019-04-22 14:02:58

标签: c++ qt

我以某种方式无法访问类QGraphicsSceneMouseEvent。我不明白问题是什么。

当我想访问mouseEvent时发生错误。

HEADER

#ifndef SCHAAKBORDUI_H
#define SCHAAKBORDUI_H

#include <QGraphicsScene>
#include "schaakbordvakjeui.h"


class QGraphicsSceneMouseEvent;

class SchaakbordUi : public QGraphicsScene {
public:
    SchaakbordUi();

private:
    bool vakjeGeselecteerd;
    schaakbordVakjeUi *geselecteerd = nullptr;

    void mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent);
};

#endif // SCHAAKBORDUI_H

来源

#include "schaakbordui.h"

#define BREEDTE_BORD 8

SchaakbordUi::SchaakbordUi() {
    vakjeGeselecteerd = false;

    for (int i = 0; i < BREEDTE_BORD; i++) {
        for (int j = 0; j < BREEDTE_BORD; j++) {
            this->addItem(new schaakbordVakjeUi(i * 100, j * 100));
        }
    }
}

void SchaakbordUi::mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent) {
   if (mouseEvent->button == Qt::LeftButton);
}

1 个答案:

答案 0 :(得分:0)

您需要

#include <QGraphicsSceneMouseEvent>

用于定义类型。

在可能的情况下在实现文件中执行此操作,而不在标头中执行。无需导入比必要范围更广的代码。