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方法更加实用。