Por Roberto Alvarado
Capitulo 2
En este nuevo capítulo vamos a continuar con los controles intrínsecos de eVB, a la par de seguir con algo de teoría para ir conociendo mas detalladamente lo que podemos hacer con eVB.
La barra de Herramientas (Toolbar)
A continuación vamos a explicar cada uno de los controles intrínsicos de eVB,
Pointer. Con este podemos cancelar cualquier otro comando que tengamos seleccionado, si nos arrepentimos de haber escogido un control TextBox, utilizamos a Pointer para anular o cancelar la selección.
Shape. Nos permite crear figuras geométricas en la forma.
Line. Permite dibujar una línea de diferentes anchos y colores en la forma.
Labels. Es uno de los controles más usados, pues en ellos vamos a colocar el texto que deseamos aparezca en las formas para ayudar al usuario en la captura de los datos de una aplicación. El texto de los labels no puede ser cambiado por el usuario.
TextBox. Es otro de los controles más usados en nuestras aplicaciones, ya que en ellos podemos capturar o visualizar información de diferente índole para actualizar nuestras bases de datos en el Pocket PC.
Frames. Este control es un contenedor de controles. Permite insertar en él cualquier control de los que tenemos en la barra de herramientas. Este control particularmente lo utilizo mucho, para simular diferentes formas, debido al inconveniente de eVB que no permite descargar las formas de memoria.
Button. Permite crear botones para seleccionar diferentes opciones por ejemplo para guardar los datos o para cancelar la grabación de los mismos, para seleccionar una opción diferente, etc.
CheckBox. Nos permite seleccionar una o varias opciones referentes a un tema.
OptionButton. Nos permite seleccionar una opción entre varias. Este es excluyente.
ComboBox. Este control permite mostrar una lista de datos desplegable que se muestra y oculta cuando hacemos clic en él. Este control nos sirve, por ejemplo, para desplegar una lista de ciudades y escoger una.
ListBox. Este control es similar al ComboBox, la diferencia es que la lista no es desplegable como la del ComboBox. Este control lo podemos utilizar para por ejemplo mostrar los nombres de los empleados de una empresa. Como en el ejemplo de la entrega anterior
HScrollBar y VScrollBar. Estos dos controles lo usamos para simular un desplazamiento vertical u horizontal en la pantalla, por ejemplo.
Timer. Este control nos permite controlar la ejecución de un procedimiento cada determinado tiempo.
Ahora vamos a desarrollar una aplicación para ir utilizando cada uno de los diferentes controles, además de los controles Actives que aun no hemos visto.
La aplicación que vamos a desarrollar es: un teclado numérico controlado completamente desde eVB.
La intención de este pequeño proyecto, es porque para llegar al teclado numérico del SIP hay que realizar demasiados pasos, además que a mi parecer es mas cómodo que el usuario tenga un teclado en la pantalla.
Una de las ventajas es que podemos acomodarlo como más nos guste, ya que lo hemos creado utilizando únicamente controles CommandButton.
En el proyecto tenemos dos Labels y dos TextBox para hacernos una idea de lo que debemos hacer.
La idea del teclado es esta: generalmente (por no utilizar siempre), se piden los datos en un TextBox, asi que vamos a crear en nuestra forma una variable publica que sea de tipo TextBox y cada vez que un TextBox tenga el foco vamos a asignar a esa variable el TextBox en cuestión. Luego en el evento click de cada uno de los botones del teclado numérico le asignamos el valor correspondiente del botón a través de nuestra variable publica de tipo TextBox.
Talvez lo único tedioso es que en el evento GotFocus de cada TextBox debemos colocar esto:
Set CajaTexto = Text1
Donde CajaTexto es nuestra variable publica tipo TextBox y Text1, es el TextBox en cuestión.
La verdad no es que sea difícil, pero mucho no sabemos por donde entrarle a la solución del problema. ¡Así que aquí esta una muy modesta solución que he probado y me ha dado muy buenos resultados! Espero que la disfruten y les sirva de mucho a todos.
Aquí esta el código completo del proyecto
Option Explicit
Public CajaTexto As TextBox
Private Sub Form_Load()
Text7.Visible = True
Text1.Visible = True
End Sub
Private Sub Form_OKClick()
App.End
End Sub
Private Sub cmdBorrar_Click()
CajaTexto.Text = ""
End Sub
Private Sub cmdCero_Click()
CajaTexto.Text = CajaTexto.Text & "0"
End Sub
Private Sub cmdCinco_Click()
CajaTexto.Text = CajaTexto.Text & "5"
End Sub
Private Sub cmdCuatro_Click()
CajaTexto.Text = CajaTexto.Text & "4"
End Sub
Private Sub cmdDos_Click()
CajaTexto.Text = CajaTexto.Text & "2"
End Sub
Private Sub cmdEntrar_Click()
'Hago algo simulando en enter
End Sub
Private Sub cmdNueve_Click()
CajaTexto.Text = CajaTexto.Text & "9"
End Sub
Private Sub cmdOcho_Click()
CajaTexto.Text = CajaTexto.Text & "8"
End Sub
Private Sub cmdRutero_Click()
frmRutero.Show
frmTomaLectura.Hide
End Sub
Private Sub cmdSeis_Click()
CajaTexto.Text = CajaTexto.Text & "6"
End Sub
Private Sub cmdSiete_Click()
CajaTexto.Text = CajaTexto.Text & "7"
End Sub
Private Sub cmdTres_Click()
CajaTexto.Text = CajaTexto.Text & "3"
End Sub
Private Sub cmdUno_Click()
CajaTexto.Text = CajaTexto.Text & "1"
End Sub
Private Sub Text1_GotFocus()
Set CajaTexto = Text1
End Sub
Private Sub Text7_GotFocus()
Set CajaTexto = Text7
End Sub
A continuación vemos una grafica de cómo se aprecia la aplicación en el handheld
Enseguida les muestro la descripción de cada uno de los controles contenidos en la forma, esta es una forma (me parece a mi) mas clara, de mostrar los controles ya que gráficamente a veces no nos cuadran las imágenes. Aquí no aparecen todas las propiedades de los controles, solo las que necesitamos para este ejemplo. Luego les explico como pueden documentar sus manuales técnicos de esta manera.
VERSION 5.00
Begin VB.Form Form1
Appearance = 0 'Flat
BackColor = &H80000005&
Caption = "Form1"
ShowOK = -1 'True
Begin VBCE.TextBox Text1
Height = 285
Left = 990
Top = 180
Visible = 0 'False
Width = 1425
BorderStyle = 1
Enabled = -1 'True
Text = ""
End
Begin VBCE.Label Label6
Height = 225
Left = 60
Top = 210
Width = 915
Caption = "LecAnterior:"
Alignment = 0
End
Begin VBCE.Label Label7
Height = 225
Left = 60
Top = 480
Width = 915
Caption = "LecActual:"
Enabled = -1 'True
Alignment = 0
End
Begin VBCE.TextBox Text7
Height = 285
Left = 990
Top = 450
Visible = 0 'False
Width = 1425
BorderStyle = 1
Enabled = -1 'True
Text = ""
Alignment = 0
End
Begin VBCE.CommandButton cmdUno
Height = 285
Left = 2400
TabIndex = 11
Top = 3090
Width = 315
Caption = "1"
Enabled = -1 'True
Style = 0
End
Begin VBCE.CommandButton cmdDos
Height = 285
Left = 2745
TabIndex = 10
Top = 3090
Width = 315
Caption = "2"
Enabled = -1 'True
Style = 0
End
Begin VBCE.CommandButton cmdTres
Height = 285
Left = 3090
TabIndex = 9
Top = 3090
Width = 315
Caption = "3"
Enabled = -1 'True
Style = 0
End
Begin VBCE.CommandButton cmdCuatro
Height = 285
Left = 2400
TabIndex = 8
Top = 2790
Width = 315
Caption = "4"
Enabled = -1 'True
Style = 0
End
Begin VBCE.CommandButton cmdCinco
Height = 285
Left = 2745
TabIndex = 7
Top = 2790
Width = 315
Caption = "5"
Enabled = -1 'True
Style = 0
End
Begin VBCE.CommandButton cmdSeis
Height = 285
Left = 3090
TabIndex = 6
Top = 2790
Width = 315
Caption = "6"
Enabled = -1 'True
Style = 0
End
Begin VBCE.CommandButton cmdSiete
Height = 285
Left = 2400
No hay comentarios.:
Publicar un comentario