這篇文章給大家分享的是有關VB.NET如何實現(xiàn)條形碼編程的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設,大同企業(yè)網(wǎng)站建設,大同品牌網(wǎng)站建設,網(wǎng)站定制,大同網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,大同網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
條形碼技術廣泛應用于各行各業(yè),你隨便拿起一本書、一包薯片都可以在外包裝上找到,利用條碼讀取機便可將這一條條黑白相間、粗細不同的垂直線條識別而轉(zhuǎn)換為具體的數(shù)值,并將這個數(shù)值返回到計算機中進行處理。正是這樣,有了條形碼技術,人們很方便就能取得該商品的有關信息如商品名稱、規(guī)格、價格等,因為每種商品都有其對應的條形碼,這個條形碼計算機(終端、服務器)中就可以迅速返回用戶,從數(shù)據(jù)庫中讀取約定的商品,信息使得銷售、進貨、存貨等等管理更有效率,也對防止假冒偽劣又一定的抑制作用。
條碼的編碼方式有多種,不同行業(yè),不同國家標準也不盡相同。條形碼通過線條的粗細來表達其數(shù)值。至于接口方式一般也有多種,如鍵盤口的、串行口的。一般傳感裝置是光罩式的,也有筆式的。
上面籠籠統(tǒng)統(tǒng)地談了一些關于條形碼的知識,可幫助你更好地閱讀以下更深入的內(nèi)容。條形碼有關概念先說到這里,接著是詳細具體的編程實現(xiàn)方法。
一、VB.NET條形碼編程中的讀取
用過鍵盤口式的掃條碼工具的朋友就知道,它就如同在鍵盤上按下數(shù)字鍵一樣,基本不需任何編程和處理。但如果你使用的是其它接口的話,可能你就要為該設備編寫通訊代碼了。以下有一段簡單的25針串口的條碼讀取器通訊代碼。
Option Explicit Dim sData As String Private Sub Form_Load() With MSComm1 .CommPort = 3 '設為COM3,試運行的系統(tǒng)而定,你可提供一個Combox讓用戶選擇。 .PortOpen = True '打開通訊端口 End With End Sub Private Sub MSComm1_OnComm() Dim EndPos As Integer Select Case MSComm1.CommEvent Case comEvReceive '當有數(shù)據(jù)傳送過來時 sData = sData & Trim(MSComm1.Input) '檢索回車,通常讀卡機每組數(shù)據(jù)結尾都返回一個回車作為結束符 EndPos = InStr(1, sData, Chr(13)) If EndPos = 0 Then '如果未結束就繼續(xù)努力 Else '讀完一組。 lblBarCode.Caption = sData '顯示一組條形碼 With lstBarCode .AddItem Mid(sData, 1, EndPos - 1) '添加一組條形碼到列表 End With sData = "" '清空 End If End Select End Sub Private Sub cmdEnd_Click() MSComm1.PortOpen = False '關閉端口 End End Sub
二、VB.NET條形碼編程中的生成
看完以上關于條碼讀取的代碼是否覺得很容易呢?對,在VB上編程本來就不難。以下關于條形碼生成的代碼也是很容易理解,只需使用一個OFFICE的附帶的BarCode控件就可以輕松打印出11種不同標準的條形碼,足以滿足我們的要求。想起我書架上的一本書中的一篇用Turbo C編寫條形碼打印程序文章,長篇大論,那時不知看了n天,打了n小時字結果也不盡人意,現(xiàn)在真是幸福多了:)。廢話說完,得回歸正題。且看條形碼生成的代碼及有關說明。
源代碼主要由兩個窗體(frmMain主窗體和frmOption條碼設置窗體)和兩個模塊組成
(modGetScreen.bas、SysDLG32.bas)。考慮到篇幅,這里只列出部分較為關鍵的代碼。
新建一個標準工程,添加一個名為(Microsoft Access BarCode Control9)的條形碼部件,并添加一個條碼控件到窗口,并將窗口改名為frmMain,如圖所示。由于控件比較多,這里不便細說,詳細內(nèi)容請看源代碼。
模塊modGetScreen.bas代碼如下:
Option Explicit
聲明BitBlt、GetDesktopWindow、GetWindowDC、ReleaseDC這幾個API函數(shù)略
Public RegUser As Boolean Sub GetObjImage1(Obj As Object, OwnerForm As PictureBox, Picture1 As PictureBox) 'hDC Dim hWndDesk As Long Dim hDCDesk As Long '區(qū)域表達變量 Dim x As Long Dim y As Long Dim w As Long Dim h As Long x = Obj.Left Screen.TwipsPerPixelX y = Obj.Top Screen.TwipsPerPixelY w = Obj.Width Screen.TwipsPerPixelX h = Obj.Height Screen.TwipsPerPixelY hDCDesk = OwnerForm.hdc '取出圖像 Call BitBlt(Picture1.hdc, 0, 0, w, h, hDCDesk, x, y, vbSrcCopy) Call ReleaseDC(hWndDesk, hDCDesk) End Sub
主窗體frmMain.frm部分代碼如下:
Private Sub cmdPrint_Click() '生成條形碼圖像 Dim r As Long, i As Integer, t As String,cfile As String '臨時變量 t = BarCode For i = 0 To Val(Times) - 1 BarCode1.Value = BarCode + i DoEvents Picture1.Refresh GetObjImage1 BarCode1, Conel, Picture1 If RegUser = False Then '如果未注冊添加MASK標記 Picture1.PaintPicture Picture2.Picture, 300, 300 End If If Dir(SavePath, vbDirectory) = "" Then MkDir SavePath SavePath = SavePath & IIf(Right(SavePath, 1) <> "", "", "") cfile = SavePath & BarCode1.Value & ".bmp" SavePicture Picture1.Image, cfile '將條形碼保存為圖像文件以便打印 Next BarCode = t End Sub
條形碼設置窗體frmOption.frm代碼如下:
Option Explicit
'條形碼設置模塊
Private Sub cboBig_Click() BarCode1.Style = cboBig.ListIndex '改變標準 End Sub Private Sub cboDirection_Click() BarCode1.Direction = cboDirection.ListIndex '改變方向 End Sub Private Sub cboLine_Click() BarCode1.LineWeight = cboLine.ListIndex '改變線寬 End Sub Private Sub cboSmall_Click() BarCode1.SubStyle = cboSmall.ListIndex '改變樣式 End Sub Private Sub Check1_Click() BarCode1.ShowData = Check1.Value '是否顯示數(shù)據(jù) End Sub Private Sub cmdChange_Click() '設置長、寬大小 BarWidth = BarCode1.Height BarHeight = BarCode1.Width cmdRefresh_Click End Sub Private Sub cmdOK_Click() '傳送條形碼設定到主界面 With frmMain.BarCode1 .LineWeight = BarCode1.LineWeight .Style = BarCode1.Style .SubStyle = BarCode1.SubStyle .Direction = BarCode1.Direction .Width = BarCode1.Width .Height = BarCode1.Height .ShowData = BarCode1.ShowData Me.Hide End With With frmMain .Picture1.Width = .BarCode1.Width .Picture1.Height = .BarCode1.Height .Conel.Width = .BarCode1.Width .Conel.Height = .BarCode1.Height End With End Sub Private Sub cmdRefresh_Click() BarCode1.Width = BarWidth BarCode1.Height = BarHeight End Sub Private Sub Form_Load() LoadBarInfo BarWidth = BarCode1.Width BarHeight = BarCode1.Height End Sub Sub LoadBarInfo() '初始化選項 LoadBigClass cboBig LoadSmallClass cboSmall LoadLineSize cboLine LoadDirection cboDirection End Sub Sub LoadBigClass(cbo As ComboBox) '條碼標準 With cbo .AddItem "UPC-A" .AddItem "UPC-E" .AddItem "EAN-13" .AddItem "EAN-8" .AddItem "Case Code" .AddItem "Codabar (NW-T)" .AddItem "Code-39" .AddItem "Code-128" .AddItem "U.S. Postnet" .AddItem "U.S. Postal FIM" .AddItem "JP Post" .ListIndex = 2 End With End Sub Sub LoadSmallClass(cbo As ComboBox) '條碼樣式 With cbo .AddItem "Standard" .AddItem "2-Digit Supplement" .AddItem "5-Digit Supplement" .AddItem "POS Case Code" .ListIndex = 0 End With End Sub
許多人在編寫數(shù)據(jù)庫應用程序時,都想要加上條形碼功能加強工作效率,尤其是銷售管理,圖書館管理這類流量大的應用軟件,但由于條形碼技術難以掌握、標誰又多以及過去的技術種種原因,使得許多人望而卻步
感謝各位的閱讀!關于“VB.NET如何實現(xiàn)條形碼編程”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
分享文章:VB.NET如何實現(xiàn)條形碼編程
網(wǎng)站路徑:http://chinadenli.net/article46/gsjghg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供用戶體驗、App設計、網(wǎng)站營銷、商城網(wǎng)站、虛擬主機、微信公眾號
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)