有一个项目用到了条码枪,需要用到Enter键作为换行符来获取完整的字段,一开始用的是如下的做法:
Keys.onPressed: {
switch(event.key)
{
···
case Qt.Key_Enter:
text = _taskChoosePopup.order_number; //字段显示出来
break;
}
}
结果发现输入Enter无法进入Enter键的处理函数。
通过找资料发现,由于Qt默认的键盘中有两个Enter键,大键盘Enter键(就是Backspace键下方的Enter键)用的是Qt.Key_Return代表,把上述程序中的Qt.Key_Enter替换掉,果然发现可行了。
另外Qt.Key_Enter代表的是小键盘的Enter键。
另外,可以直接用以下函数触发Enter键
Keys.onEnterPressed:
{
dosomething();
}
Keys.onReturnPressed:
{
dosomething();
}键盘事件
本文探讨了在Qt框架中使用条码枪输入时,如何正确处理Enter键与Return键的问题。通常情况下,Qt将Enter键映射到小键盘上的Enter键(Qt.Key_Enter),而大键盘上的Enter键则被映射为Return键(Qt.Key_Return)。文章还介绍了如何通过Keys.onEnterPressed和Keys.onReturnPressed来分别捕获这两个按键。
3459

被折叠的 条评论
为什么被折叠?



