您的位置:首页 > 编程语言 > Qt开发

QT按键判断和碰撞检测的问题,紧急求助啊!!!3Q

2014-05-29 15:20 330 查看
在写贪吃蛇, 发现QT按键判断不对劲啊。。。
已经弄好过滤器那些了, 但是如果快速按←↓→的话 (或者其他按的很快的情况) 就会出现比如本来向右 然后直接掉头向左 本来向左 直接掉头向右的情况。。。。这是为什么呢?

还有碰撞检测第一次可以检测成功 接下去就再也检测不了了 这是为什么。。。。求助!!!~~~万分感谢

下面是按键过滤器的代码和按键事件的代码。。。

bool CONTROLLER::eventFilter(QObject *object, QEvent *event)
{
if (event->type() == QEvent::KeyPress) 
{ handleEvent((QKeyEvent *) event); 
return true; 

else 
return QObject::eventFilter(object, event);
}

void CONTROLLER::handleEvent(QKeyEvent *keyEvent)
{
switch (keyEvent->key()) 

case Qt::Key_Left: Snake->setDirection(LEFT); break; 
case Qt::Key_Right: Snake->setDirection(RIGHT); break; 
case Qt::Key_Up: Snake->setDirection(UP); break; 
case Qt::Key_Down: Snake->setDirection(DOWN); break; 
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: