当前位置:编程学习 > C#/ASP.NET >>

用.NET支持扫描枪问题,客户就在身边,急啊!!

我用C#做的程序,为什么扫码时扫描两次才有反应一次
我扫的条码是107122300019
扫第一次没反应,扫第二次时就成了“107122300019107122300019”
成了刷两次的结果 --------------------编程问答-------------------- 如果扫描错也无所谓了,只是为什么扫描两次才有一次反应,而且结果是两次扫描的结果
--------------------编程问答-------------------- 我做过用扫描枪的程式
但没有发现过你这样的现象

你有没有在文本框中做捕捉回车键的事件
看看是是否有值? --------------------编程问答-------------------- 没做过扫描枪的问题,做过点刷卡的问题,代码写出来看看有没帮助,是判断刷卡的时候回车键
private void 刷卡_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyValue.ToString() != "13")
            {
                if (key.Length < 10)
                {
                    key += Convert.ToChar(e.KeyValue).ToString();
                }
            }
            else
            {
                CardInId = key;
                SFsk = true;
                this.Close();
            }
        } --------------------编程问答-------------------- 如果值错了我可以解析一下,但是每次刷两次条码才执行一次接收事件,这是什么原因呢?
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
        {
            string barID;
            barID = serialPort1.ReadExisting();
            SetTextBox(barID);

        } --------------------编程问答-------------------- 没做过,帮顶! --------------------编程问答-------------------- 取数据的串口程序的数据格式正确? --------------------编程问答-------------------- 可以在不同的事件里试下,看看textchange里面行不行 --------------------编程问答-------------------- 用这个看成不
serialPort1.ReadLine();  --------------------编程问答-------------------- 你应该用的是串口枪吧 USB的基本没有这现象的
 这种情况我也遇到过,你可以看看串口的阀值(ReceivedBytesThreshold)是多少。我是设置成1的。
还有就是在DataReceived事件中,可以稍微加点延时,比如100毫秒。主要问题可能还是阀值
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,