重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在条码扫描应用的开发过程中,一个重要的步骤是获取扫描枪所扫描的条码,并将条码存储在数据库中。
成都创新互联主要业务有网站营销策划、成都网站设计、做网站、微信公众号开发、微信平台小程序开发、H5页面制作、程序开发等业务。一次合作终身朋友,是我们奉行的宗旨;我们不仅仅把客户当客户,还把客户视为我们的合作伙伴,在开展业务的过程中,公司还积累了丰富的行业经验、成都营销网站建设资源和合作伙伴关系资源,并逐渐建立起规范的客户服务和保障体系。条码有一定的限制条件:
1、条码类型为一维条码。
2、条码长度为8位。
3、条码首位为字母,后7位为数字。
只有符合条件的条码,例如:A1234567,才能获得通过。
了解到扫描枪同键盘相似,能够触发OnKeyPress、OnKeyDown、OnKeyUp事件,一般的扫描枪,在扫描完条码后会默认自动加个“回车”。比如扫描“A1234567”,实际是返回“A1234567回车”。明白了这一点,编码就很简单了。
c#:
using System; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { this.ute1.Focus(); } private void ute1_KeyPress(object sender, KeyPressEventArgs e) { // 判断是否为回车键,是回车键才能执行 if (e.KeyChar == 13) { // 获取文本框中的最后8为字符 string barcode = ute1.Text.Substring(ute1.Text.Length - 8, 8).ToUpper(); // 检查8位字符是否符合要求 if (!BarcodeUtility.CheckBarcode(barcode)) { // 符合要求的8位条码 ul.Text = barcode; // 执行数据库保存程序 // ...... } else { ul.Text = "条码扫描错误"; } // 将文本框1清除 ute1.Clear(); ute1.Focus(); } } } }
VB.NET:
Imports WindowsApplication1.Class1 Public Class BarcodeChcek Private Sub BarcodeChcek_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.TextBox1.Focus() End Sub Private Sub TextBox1_KeyDown(ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown '判断是否为回车键,是回车键才能执行 If e.KeyCode = 13 Then '获取文本框中的最后8为字符 Dim barcode As String barcode = Microsoft.VisualBasic.Right(Me.TextBox1.Text, 8) '检查8位字符是否符合要求 If mCodeCheck(barcode) = True Then Me.Label1.Text = "条码扫描错误" Else '符合要求的8位条码 Me.Label1.Text = barcode End If '将文本框1清除 Me.TextBox1.Clear() Me.TextBox1.Focus() End If End Sub End Class
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。