十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在TEXTBox的属性找到ReadOnly,设置为TURE
创新互联公司是专业的枞阳网站建设公司,枞阳接单;提供做网站、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行枞阳网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
还有一个方法是用Lable不用Textbox
==========================================
就是我尝试设置为ReadOnly设置为TURE
执行以下代码
TextBox1.Text = "123"
在在TEXTBOX能成功显示能够成功显示123
不用特别处理
1.如果Xenon 1900 用键盘接口,那么你就打开一个文本框,当焦点在文本框时,扫描数据就可以获取到文本框.
2.如果Xenon 1900 用串口,你需要从串口缓冲区接收数据就可以了.建议扫描枪设置回车换行为结束符,这样方便你从缓冲区取数时,判断二维码数据的开始和结束位置.
USB比较难抓数据,建议是USB模拟串口,或者直接就是串口,这样数据比较好抓。
USB上传模式是鼠标光标在哪数据就上传在哪,所以你抓USB的数据的很难!
X猫-思刊办公专营店
我用过的扫描枪的输入是用的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等。
如果是usb扫描枪,是焦点在哪它就输入在哪,不能自动对应到相应的文本框
如果是串口扫描枪可以实现你的功能,在代码里判断相应的串口对应文本框