#include<QKeyEvent>
键盘事件由两个重载函数,实现即可:
void keyReleaseEvent(QKeyEvent *event);
void keyPressEvent(QKeyEvent *event);
首先:在构造函数:setFocusPolicy(Qt::StrongFocus);
void MainView::keyPressEvent(QKeyEvent *event){ //这时的键盘就可以触发键盘上的字母(区分大小写),数字(包括小键盘),符号(!@#¥%|+-*/&) qDebug()<<event->text();//按键的文本比如ABC
qDebug()<<event->key();//按键的枚举值,比如M是77
if(event->key()==Key_D)
{
}}
void keyReleaseEvent(QKeyEvent *event)//键盘离开事件
e->isAutoRepeat()//判断是否长按,无论在触发函数,还是离开事件里,加上判断就可以实现长按
注意:tab 不能按照这个方法实现