Red de conocimiento informático - Problemas con los teléfonos móviles - VB reconoce códigos de barras

VB reconoce códigos de barras

1. Lectura de códigos de barras

Los amigos que han utilizado una herramienta de escaneo de códigos de barras tipo puerto de teclado saben que es como presionar teclas numéricas en el teclado y básicamente no requiere ninguna programación ni procesamiento. Pero si está utilizando otra interfaz, es posible que necesite escribir un código de comunicación para el dispositivo. A continuación se muestra un código de comunicación simple para un lector de códigos de barras con una interfaz serial de 25 pines.

Opción explícita

Atenuar sData como cadena

Sub privado Form_Load()

Con MSComm1

.CommPort = 3 'Establezca esto en COM3 dependiendo del sistema que esté intentando ejecutar. Puede proporcionar un Combbox para que el usuario elija.

.PortOpen = True 'Abrir puerto de comunicación

Finalizar con

End Sub

Sub privado MSComm1_OnComm()

Dim EndPos As Integer

Seleccionar caso MSComm1.CommEvent

Caso comEvReceive 'Cuando hay entrada de datos

sData = sData & Trim(MSComm1.Input)

EndPos = InStr(1, sData, Chr(13))

Si EndPos = 0 Entonces 'Continúa intentándolo si no terminas

De lo contrario 'Termina de leer un set.

lblBarCode.Caption = sData 'Mostrar un conjunto de códigos de barras

Usar lstBarCode

.AddItem Mid(sData, 1, EndPos - 1) 'Agregar se agrega un código de barras de grupo a la lista

Finalizar con

sData = "" 'Borrar

Finalizar si

Finalizar seleccionar

End Sub

Private Sub cmdEnd_Click()

MSComm1.PortOpen = False Cerrar el puerto

Fin

End Sub

p>

Dos: Generación de códigos de barras

Programar en VB no es difícil. El siguiente código para la generación de códigos de barras también es fácil de entender. Simplemente use un control de código de barras que viene con OFFICE para imprimir fácilmente 11 códigos de barras estándar diferentes, lo cual es suficiente para cumplir con nuestros requisitos. Recordé un artículo sobre un programa de impresión de códigos de barras escrito en Turbo C en un libro en mi estantería. No sabía que lo leí durante n días y escribí durante n horas, pero el resultado no fue así. satisfactorio. Ahora es realmente mucho más feliz :). Después de decir tonterías, tengo que volver al tema. Echemos un vistazo al código de generación de códigos de barras y las instrucciones relacionadas.

El código fuente incluye principalmente dos formularios (formulario principal frmMain y formulario de configuración de código de barras frmOption) y dos módulos (modGetScreen.bas, SysDLG32.bas). Teniendo en cuenta la extensión del artículo, aquí solo se enumeran algunos de los códigos más críticos.

Cree un nuevo proyecto estándar, agregue una parte de código de barras denominada (Microsoft Access BarCode

Control9) y agregue un control de código de barras en la ventana, luego cambie el nombre de la ventana a frmMain, como se muestra en la figura. Dado que hay muchos controles, no es conveniente entrar en detalles aquí. Consulte el código fuente para obtener más detalles.

El código del módulo modGetScreen.bas es el siguiente. El código básico es el siguiente:

Opción explícita

Declara ligeramente las funciones API de BitBlt, GetDesktopWindow. , GetWindowDC y ReleaseDC

RegUser público como booleano

Sub GetObjImage1(Obj como objeto, OwnerForm como PictureBox, Picture1

Como PictureBox)

'hDC

Atenuar hWndDesk mientras

Atenuar hDCDesk mientras

'Variable de expresión de región

Atenuar x mientras

Atenuar y mientras

Atenuar w mientras

Atenuar h mientras

x = Obj.

x = Obj.Screen.TwipsPerPixelX

y = Obj.Top Screen.TwipsPerPixelY

w = Obj.Width Screen.TwipsPerPixelX

h = Obj.Height Screen.TwipsPerPixelYTwipsPerPixelY

hDCDesk = OwnerForm.hdc

'Obtener la imagen

Llamar a BitBlt(Picture1.hdc, 0, 0, w, h, hDCDesk, x, y ,

vbSrcCopy )

Llamar a ReleaseDC(hWndDesk, hDCDesk)

End Sub

El código en la parte frmMain.frm del El formulario principal es el siguiente:

Private Sub cmdPrint_Click()

'Generar imagen de código de barras

Dim r As Long, i As Integer, t As String,cfile Como

Cadena 'Variable temporal

p>

t = Código de barras

Para i = 0 A Val(Veces) - 1

Código de barras1.Valor = Código de barras + i