按键事件错误

use*_*872 3 c++ qt qgraphicsview

我在实现捕捉时遇到 keyEvent 错误。错误如下:

error: invalid use of incomplete type 'class QKeyEvent'
 switch(event->key())
Run Code Online (Sandbox Code Playgroud)

我的按键事件代码如下:

void Snap::keyPressEvent(QKeyEvent* event)
    {
    switch(event->key())
    {
    case Qt::Key_Left:
    moveBy(-gridSize, 0);
    break;

    case Qt::Key_Right:
    moveBy(gridSize, 0);
    break;

    case Qt::Key_Up:
    moveBy(0, -gridSize);
    break;

    case Qt::Key_Down:
    moveBy(0, gridSize);
    break;

    default:
    QGraphicsItem::keyPressEvent(event);
    }
    }
Run Code Online (Sandbox Code Playgroud)

请帮我解决一下。

Nej*_*jat 5

你应该包括QKeyEvent课程:

#include <QKeyEvent>
Run Code Online (Sandbox Code Playgroud)