我希望能够随时检查该键是否被按下。我想象这样一个解决方案:
void MyQQuickPaintedItem::keyPressEvent(QKeyEvent * event)
{
isKeyPressed[ event->key() ] = 1;
}
void MyQQuickPaintedItem::keyReleaseEvent(QKeyEvent *event)
{
isKeyPressed[ event->key() ] = 0;
}
要检查是否按下了右箭头键,检查isKeyPressed[ Qt::Key_Right ]
值就足够了。
我实现了它并且......它不起作用。我并不是说程序崩溃了。isKeyPressed[ Qt::Key_Right ]
始终为 0,即使我按此向右箭头键或任何其他键。
编辑:
头文件之一:
...
bool isKeyPressed[255];
...
链接文件之一:
...
extern bool isKeyPressed[255];
...
我不知道到底应该有多大isKeyPressed
,但我没有得到 SIGSEGV,所以大小可能还可以。