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