//最近一直忙于做驱动,对底层东西很是好奇,好奇键盘是 怎么区分每个键值的,又是怎么响应的!因此,就有了下面这些代码
//环境windows 工具qt 语言c++
//在主窗体类中声明键盘响应函数
void keyPressEvent(QKeyEvent * event);
//c.pp文件中实现
void MainWindow::keyPressEvent(QKeyEvent *event)
{
//0x30对应Ascii表中0,0x31表示1,剩下的一次类推
if (0x30 <= event->key() && 0x39 >= event->key())
{
qDebug()<<event->key();
}
else if (0x2a == event->key())
{
qDebug()<<event->key();
}
else if (0x1b == event->key())
{
qDebug()<<event->key();
}
else if (0x08 == event->key())
{
qDebug()<<event->key();
}
else if (0x23 == event->key())
{
qDebug()<<event->key();
}
else if (0x0d == event->key())
{
qDebug()<<event->key();
else if (0x2e == event->key())
{
//sKey = ".";
qDebug()<<"%d"<<event->key();
}
else if (0x54 == event->key())
{
qDebug()<<event->key();
}
else if (0x41 <= event->key() && 0x48 >= event->key())
{
qDebug()<<event->key();
}
else if(KeyValue->key() == Qt::Key_Return)
{
QString input = ui->lineEdit->text();//当按下回车时,自动将输入框的内如传入到input变量
qDebug()<<event->key();
}
}
//对应键值表和ascll表你会有更多发现》》》
》》ascll链接:http://www.asciima.com/