C#中判断扫描枪输入与键盘输入
2016-11-25 00:00
330 查看
提出问题:在收货系统中,常常要用到扫描枪扫描条码输入到TextBox,当条码无法扫描时,需要手工输入。如果是扫描枪输入时,我们将自动去判读条码,而手工输入时,最终需要加按回车键确认后判读条码。这时候我们就要判断输入设备是手工还是扫描枪。
尝试的方法:
1.将TextBox属性设为ReadOnly=true。结果:无法输入。
2.在TextBox的KeyPress事件中设置属性e.handle=true。结果:扫描枪输入时也会触发KeyPress事件,因此也不能输入。
3.在TextBox的ValueChanged事件中判断结果。结果:扫描枪也是一个一个字符输入,不是一次性将整个条码输入。
思考:扫描枪其实在输入上与键盘完全相似。但是人工输入和扫描设备输入的区别在于,扫描设备输入速度比较快而且时间间隔比较平均。
实验:
![](http://images.cnblogs.com/cnblogs_com/yyknight/test.jpg)
实验结果证明开始的推断。
解决方法:
Private DateTime _dt = DateTime.Now; //定义一个成员函数用于保存每次的时间点
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
DateTime tempDt = DateTime.Now; //保存按键按下时刻的时间点
TimeSpan ts = tempDt .Subtract(_dt); //获取时间间隔
if (ts.Milliseconds > 50) //判断时间间隔,如果时间间隔大于50毫秒,则将TextBox清空
textBox1.Text = "";
dt = tempDt ;
}
至此, 问题解决,希望大家有更好的方法留言交流
如果你正在寻找一款可用于二次开发的扫描枪请联系我们,我们提供完整的SDK包下载:
![](https://static.oschina.net/uploads/space/2016/1124/162357_k5Ag_2927264.jpg)
尝试的方法:
1.将TextBox属性设为ReadOnly=true。结果:无法输入。
2.在TextBox的KeyPress事件中设置属性e.handle=true。结果:扫描枪输入时也会触发KeyPress事件,因此也不能输入。
3.在TextBox的ValueChanged事件中判断结果。结果:扫描枪也是一个一个字符输入,不是一次性将整个条码输入。
思考:扫描枪其实在输入上与键盘完全相似。但是人工输入和扫描设备输入的区别在于,扫描设备输入速度比较快而且时间间隔比较平均。
实验:
![](http://images.cnblogs.com/cnblogs_com/yyknight/test.jpg)
实验结果证明开始的推断。
解决方法:
Private DateTime _dt = DateTime.Now; //定义一个成员函数用于保存每次的时间点
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
DateTime tempDt = DateTime.Now; //保存按键按下时刻的时间点
TimeSpan ts = tempDt .Subtract(_dt); //获取时间间隔
if (ts.Milliseconds > 50) //判断时间间隔,如果时间间隔大于50毫秒,则将TextBox清空
textBox1.Text = "";
dt = tempDt ;
}
至此, 问题解决,希望大家有更好的方法留言交流
如果你正在寻找一款可用于二次开发的扫描枪请联系我们,我们提供完整的SDK包下载:
![](https://static.oschina.net/uploads/space/2016/1124/162357_k5Ag_2927264.jpg)
相关文章推荐
- C#中判断扫描枪输入与键盘输入
- C#怎么判断扫描枪输入与键盘输入?
- C#中判断扫描枪输入与键盘输入
- 【转】C#中判断扫描枪输入与键盘输入
- C#中判断扫描枪输入与键盘输入
- C#怎么判断扫描枪输入与键盘输入?
- C#中判断扫描枪输入与键盘输入
- c#键盘单词输入判断游戏
- WinForm中TextBox 中判断扫描枪输入与键盘输入
- 实训JAVA语言设计——从键盘输入一个年份,判断是否是闰年
- 通过键盘输入某年某月某日判断是第多少天?第几周?星期几?
- 用C# Regex类实现的一些常规输入判断
- 在c#.net中,如何判断文本框中的值是否是数字?我想验证身份证输入是否正确。
- C#判断输入是否为汉字
- c#判断不按键盘不移动鼠标
- c#判断输入文字是否是数字
- C# 判断各种输入
- 通过键盘输入一个字符串,判断字符串中出现最多的字符并输出该字符和输出出现次数
- 用C# Regex类实现的一些常规输入判断
- C#判断输入的字符串中是否含有大写字母,小写字母,数字,字符