十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如果是usb扫描枪,是焦点在哪它就输入在哪,不能自动对应到相应的文本框
创新互联自成立以来,一直致力于为企业提供从网站策划、网站设计、成都网站建设、成都网站制作、电子商务、网站推广、网站优化到为企业提供个性化软件开发等基于互联网的全面整合营销服务。公司拥有丰富的网站建设和互联网应用系统开发管理经验、成熟的应用系统解决方案、优秀的网站开发工程师团队及专业的网站设计师团队。
如果是串口扫描枪可以实现你的功能,在代码里判断相应的串口对应文本框
我用过的扫描枪的输入是用的com输入,在VB里添加MSComm控件即可。视设备管理器里识别为com几就选com几。
扫描的时候,MSComm控件有comEvReceive事件,可以作为触发事件的,比如控件名是MSComm1
那这个MSComm1_OnComm()里,如果有这个触发事件,就可以声明一个字符型来接受MSComm1.input
这个输入可能根据不同扫描枪不同要进行些处理以得到你需要的条码实值
当然条码枪具体给你什么你可以去Windows自带的Hyper Terminal里看到
有个了这个条码值,在你图里对应的第二个表里其他的Textbox或者label控件就可以写相应的Caption了,无非是if,case判断了
不加数据库连接的话就没那么复杂了
空口说白话也不行,以下是基于Motolora Symbol P370/470型对条码值的一些处理,直接写在OnComm里了,process_no就是看到这个号码做相应处理的判断,可以另起炉灶写一个到时候调用就是
Private Sub MSComm1_OnComm()
Dim st As String
If MSComm1.CommEvent = comEvReceive Then
st = MSComm1.Input
If st Chr(3) Then
st_all = st_all + st
Else
Txt_Pt.Text = Trim(Mid(st_all, InStr(st_all, Chr(2)) + 1, 10))
st_all = ""
Process_no
End If
End If
End Sub
以上只是com接收事件和取值的例子,判断不必参考的,关键无非是把接收值读入st,再对st_all这个全局变量赋值(不然你一会用那个条码值可没有个地方记录了)
非com输入恕在下暂时无能为力
这个要看扫描枪的通讯接口和通讯协议,以及接口程序是否支持VB.NET等。
这么跟你说吧,条码扫描器就相当于自动打字的键盘一样,会把扫描到的条码自动转换为数字然后发送到电脑中。你打开记事本,然后扫描一些条码试试就知道了。
你的条码扫描器的说明书应该还有各种设置方法的说明的,可以给扫描器增添各种功能,比如在条码数字的后面增加一个回车键,这在编程中比较有用。
上海启邦条码工程师马天宇回答你:
不管用什么开发语言制作的条码,只要是符合国际国家标准的应该都能扫描出来。
不识别的原因可能有:
1、制作的条码比例不标准,失真。 或没有开始结束符,或没有校验码(有的码制要有)。
2、 条码打印效果差,黑白对比度不够。
3、条码扫描器问题,精度不够,码制未开启等。