QT按键监控函数

void game_2048::keyPressEvent(QKeyEvent *event)
{
    try
    {
        if (event->key() == Qt::Key_W || event->key() == Qt::Key_Up)
        {
            blockShow(QString("up"));
        }
        if (event->key() == Qt::Key_A || event->key() == Qt::Key_Left)
        {
            blockShow(QString("left"));
        }
        if (event->key() == Qt::Key_S || event->key() == Qt::Key_Down)
        {
            blockShow(QString("down"));
        }
        if (event->key() == Qt::Key_D || event->key() == Qt::Key_Right)
        {
            blockShow(QString("right"));
        }
    }
    catch (QString exception)
    {
        QMessageBox::about(0, "Error", exception);
        this->close();
    }
}

如果使用的按键较多建议使用switch方法更加实用。

猜你喜欢

转载自blog.csdn.net/qq_43581670/article/details/107714053