0

根据缓冲区清除问题,我知道我的问题与其他问题似乎非常相似......但这里有一个详细的描述:

我有一个 motorolla 手持设备(条形码扫描仪),它通过托盘工具读取条形码。代码由托盘工具扫描并被转换为击键,就像正常按下键盘上的键一样。

所以我在 vb 中有一个应用程序,它应该读取条形码,然后一秒钟然后继续输入。

阅读 12 个字符/数字后,我的文本字段应将焦点设置为另一个文本字段(2.条形码),因此我检查 onChange 长度,然后将焦点设置为下一个文本字段。

如果存在恶意条形码或包含超过 12 个字符/数字的条形码,则第二个文本字段将填充文本字段 1 中 12. char 之后的所有字符。

我无法控制扫描行为或扫描仪触发器的 keydown 事件......不可能。输入数据中也没有终止符号,这表明一个块在这里结束。

那么如何清除扫描仪虚拟键盘的缓冲区?!有什么建议么?

4

2 回答 2

0

我建议下载扫描仪的手册以查找配置代码。它们通常是一组特殊的条形码,可以对其进行扫描以设置允许的符号系统等属性。您需要做的是设置扫描仪,以便它为您的数据附加 CRLF、Tab 或其他终止符。这样您就可以在条形码的末尾采取行动。

于 2012-07-11T12:40:06.937 回答
0

您可以使用 TWAIN 来处理扫描,我不确定它是否支持摩托罗拉。尝试下载一些 TWAIN 库并将它们与您的项目配合使用。

于 2012-07-11T13:32:18.667 回答