一个窗体上有多个EDIT,其中一个用于接收条码抢的值,当焦点在这个EDIT上的时候没问题,但是当焦点在其它EDIT上的时候,条码抢扫描的值就跑到其他EDIT中去了,如何控制条码抢,使其扫描到的值无论焦点在那个控件上都在指定的EDIT上?

解决方案 »

  1.   

    如果你的条码枪是COM口的,直接监控COM口就可以了。
    如果是键盘口的就比较困难了。
    如果条码是你自己设计的还好一点,把条码的前几位设为不常用的字母组合如:TMQY,然后监控键盘输入,如果有这几个这几个连接字符,就自动添入edit1,并使edit1获得焦点接收其它字符。
      

  2.   

    不知道你怎么用的接口函数,你定死显示在哪个edit不就行了
      

  3.   

    只能用个键盘 hook (钩子) ,这样保证你焦点无论在那个控件上, 你的钩子函数都收到,而条码一般会以 0d,0a 作结束符,收到 0d,0a 即作结束  还有一点,由于条码输入时,是快速连续击键,速度远较用人手进行键盘输入快,这就是你键盘钩子函数判断是键盘输入或条码枪输入的依据 
      

  4.   

    如果是键盘接口的条码枪,它过来的跟键盘输入的一样,不会用开始和结束符的。
    另外:
    还是如果是COM的,你接收后可先做任何处理再保存。
      

  5.   

    要看你的枪是什么接口,函数如何调用的
    一般都是任何edit都能輸入的,像鍵盤