要想Qt的窗口部件在图形用户界面中响应键盘事件,首先该窗口部件必须拥有焦点(focus)。
一个拥有焦点(focus)的QWidget才可以接受键盘事件。
具体如下:
首先对centralWidget设置focusPolicy 属性为StrongFocus。
然后对利用该UI文件生成对应的头文件
ui_QtGuiTest.h中有如下代码:
经过上述的设置后,
keyPressEvent(QKeyEvent* event)函数就可以对按键进行响应了。
void QtGuiTest::keyPressEvent(QKeyEvent* event)
{
//普通键
switch (event->key())
{
case Qt::Key_F1:
qDebug() << "F1 pressed";
case Qt::Key_A:
qDebug() << "