mainwindow.h
protected:
void keyPressEvent(QKeyEvent *keyValue);
mainwindow.cpp
void MainWindow::keyPressEvent(QKeyEvent *keyValue)
{
if (keyValue->key() == Qt::Key_Return) //扫码枪内字符串,以回车结尾
{
qDebug() << "QrCode:" << manualStr ;//此时的manualStr便完成了取出
manualStr.clear();
}
else {
manualStr += keyValue->text();
}
}
缺点是焦点必须集中在当前窗口也就是MainWindow上,否则无法截获。
更推荐使用串口的方式获取,详见上一篇文章