miércoles, septiembre 05, 2007

Tutor Embedded Visual Basic - Capitulo 4

Por Roberto Alvarado

Capitulo 4

Descripción de la Aplicación Control de Tareas

La aplicación Control de Tareas, para nosotros los informáticos puede ser desarrollo de una rutina de una aplicación en la que estemos trabajando, el helpdesk que le demos a los usuarios de la compañía en la utilización de las diferentes aplicaciones de escritorio que se manejen y de las aplicaciones propias de la compañía, la instalación y configuración de un computador para alguna de las instalaciones de la compañía, etc.

Esta pequeña, pero practica aplicación nos permitirá ver o justificar en que nos gastamos el tiempo, además nos puede servir para facturar a nuestros clientes por servicios prestados.

La aplicación permitirá crear una descripción muy básica de los clientes, un tipo de aplicación, al cual le estamos trabajando, una descripción del problema o inconveniente a resolver, el valor del servicio, el tiempo que llevamos gastado en la tarea, si la tarea esta activa, en pausa o terminada.

Empezando una Nueva Aplicación

Para esto vamos a crear un nuevo proyecto y escogemos la opción de Pocket PC 2002 como tipo de proyecto.

Configurando el Proyecto

Vamos a ir al menú Project y luego Project1, Properties..., Nos va a aparecer la siguiente pantalla en la cual vamos a rellenar en la casilla de Project Name con Tareas, en la casilla Project Description, Aplicacion para el Control de Tiempos y Tareas y presionamos el botón OK.

En la barra de menús escogemos la opción Project, y en el submenú la opción Components, de la lista que aparece vamos a escoger los siguientes componentes:

  • Microsoft CE PictureBox Control 3.0
  • Microsoft PocketPC MenuBar Control 3.0

Con esto vamos a crear una pantalla con los siguientes datos dentro de un control frame, a continuación les muestro como debe quedar nuestra pantalla:

Incluimos cuatro controles PictureBox en los cuales vamos a mostrar las gráficas para empezar una nueva tarea, para poner en Pausa una tarea que estemos desarrollando, para Terminar una tarea en proceso o para Cancelar una Tarea. Son los cuatro botones que aparecen en la parte inferior del frame.

Hacemos doble clic sobre el control MenuBar para incluirlo en la forma, este va a aparecer en la parte central de la forma pero, no se preocupen, que este control es el que nos permite crear los menús y las barras de herramientas, así que este control aparece en la parte inferior de la pantalla de nuestra aplicación cuando se este ejecutando.

Hacemos clic sobre en control MenuBar cuando ya este en la forma, y en la ventana de las propiedades del control, la ventana inferior de la derecha y escogemos la propiedad NewButton, esta a True, la colocamos en False, esto lo hacemos para que no muestre una opción de New al iniciar la aplicación. El resto de las propiedades no son problema, podemos cambiar el nombre del control por el que queramos también, para nuestro caso dejamos el nombre de eVB asigna por defecto.

Ahora abrimos la ventana de código de nuestra forma y en le evento Load de la forma vamos a configurar el control MenuBar para crear los menús que necesitamos y le asignamos los archivos bmp a los picturebox:

Private Sub Form_Load()

Dim mnuTablas As MenuBarMenu

Dim mnuAccion As MenuBarMenu

PictureBox1.Picture = App.Path & "Adelante.bmp"

PictureBox2.Picture = App.Path & "Pausa.bmp"

PictureBox3.Picture = App.Path & "Stop.bmp"

PictureBox4.Picture = App.Path & "Undo.bmp"

'Configuro el MenuBar

Set mnuTablas = MenuBar1.Controls.AddMenu("Tablas", mnuTablas)

mnuTablas.Items.Add 1, "mnuTabTareas", "Tareas"

mnuTablas.Items.Add 2, "mnuTabClientes", "Clientes"

mnuTablas.Items.Add 3, "mnuTabApp", "Aplicaciones"

Set mnuAccion = MenuBar1.Controls.AddMenu("Accion", mnuAccion)

mnuAccion.Items.Add 1, "mnuNuevo", "Nuevo"

mnuAccion.Items.Add 2, "mnuEditar", "Editar"

mnuAccion.Items.Add 3, "mnuBorrar", "Borrar"

mnuAccion.Items.Add 4, "mnuCancelar", "Cancelar"

mnuAccion.Items.Add 5, "mnuGuardar", "Guardar"

mnuAccion.Items.Add 6, "mnuCerrar", "Cerrar"

End Sub

Hasta aquí hemos aprendido como trabajar con el control MenuBar para crear menús y submenús. Ahora vamos a adicionarle a la barra de menús, botones, o sea vamos a crear un menú combinado.

Como vamos a colocarle graficas a nuestro botones necesitamos otro control: el control ImageList para guardar las imágenes y poder asociarlas a los botones.

Nos vamos nuevamente al menú Project, Components y escogemos Microsoft CE Image List Control 3.0, presionamos en el botón OK

Doble clic sobre el control ImageList para insertarlo en la forma, ahora en el mismo evento Load de la forma configuramos el imageList y lo asignamos al MenuBar.

' Configuro el tamaño de las imagenes

ImageList1.ImageHeight = 16

ImageList1.ImageWidth = 16

' Agrego las imagenes

ImageList1.Add App.Path & "Primero.bmp"

ImageList1.Add App.Path & "Atras.bmp"

ImageList1.Add App.Path & "Adelante.bmp"

ImageList1.Add App.Path & "Ultimo.bmp"

'Le decimos al MenuBar que use el ImageList

MenuBar1.ImageList = ImageList1.hImageList

'Configuro los botones

Dim btnSepara As MenuBarButton

Dim btnInicio As MenuBarButton

Dim btnPrevio As MenuBarButton

Dim btnSigte As MenuBarButton

Dim btnFin As MenuBarButton

'Boton Separador

Set btnSepara = MenuBar1.Controls.AddButton

btnSepara.Width = 80

btnSepara.Style = mbrSeparator

'Boton Inicio

Set btnInicio = MenuBar1.Controls.AddButton("btnInicio")

btnInicio.Image = 1

btnInicio.Style = mbrDefault

'Boton Previo

Set btnPrevio = MenuBar1.Controls.AddButton("btnPrevio")

btnPrevio.Image = 2

btnPrevio.Style = mbrDefault

'Boton Sgte

Set btnSigte = MenuBar1.Controls.AddButton("btnSigte")

btnSigte.Image = 3

btnSigte.Style = mbrDefault

'Boton Ultimo

Set btnFin = MenuBar1.Controls.AddButton("btnFin")

btnFin.Image = 4

btnFin.Style = mbrDefault

' Luego que los botones y los menus son agregados

' al MenuBar, los Objectos se liberan

Set mnuTablas = Nothing

Set mnuAccion = Nothing

Set btnSepara = Nothing

Set btnInicio = Nothing

Set btnSigte = Nothing

Set btnPrevio = Nothing

Set btnFin = Nothing

Aquí podemos apreciar como se observa el menú combinado en la parte inferior de la pantalla del Pocket.

Aquí va la definición de los controles para que les quede exactamente igual a las graficas:

VERSION 5.00

Object = "{338D5EA5-4BBD-11D1-9A7D-00C04FAD5AEC}#1.0#0"; "mscepicture.dll"

Object = "{F7DEA2C9-BA8F-446E-A292-B4840F3BD661}#1.0#0"; "mscemenubar.dll"

Object = "{E491F001-98EC-11D1-9B3D-00C04FAD5AEC}#1.0#0"; "msceimagelist.dll"

Begin VB.Form frmTareas

Appearance = 0 'Flat

BackColor = &H80000005&

Caption = "Control de Tareas"

ClientHeight = 3615

ClientWidth = 3480

ForeColor = &H80000008&

ShowOK = -1 'True

Begin CEImageListCtl.ImageList ImageList1

Left = 1890

Top = 3000

End

Begin MenuBarLib.MenuBar MenuBar1

Left = 2520

Top = 2940

Enabled = -1 'True

NewButton = 0 'False

End

Begin VBCE.Frame fraTareas

Height = 3225

Left = 60

TabIndex = 0

Top = 60

Width = 3405

BorderStyle = 1

Caption = "[Tareas]"

Enabled = -1 'True

BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}

Name = "Tahoma"

Size = 8.25

EndProperty

Begin PictureBoxCtl.PictureBox PictureBox1

Height = 325

Left = 150

Top = 2790

Width = 325

Enabled = -1 'True

End

Begin PictureBoxCtl.PictureBox PictureBox2

Height = 330

Left = 570

Top = 2790

Width = 330

Enabled = -1 'True

End

Begin PictureBoxCtl.PictureBox PictureBox3

Height = 330

Left = 990

Top = 2790

Width = 330

Enabled = -1 'True

End

Begin PictureBoxCtl.PictureBox PictureBox4

Height = 330

Left = 1380

Top = 2790

Width = 330

Enabled = -1 'True

End

Begin VBCE.TextBox txtSolucion

Height = 645

Left = 120

Top = 2100

Width = 3195

Enabled = -1 'True

Text = ""

MultiLine = -1 'True

ScrollBars = 2

End

Begin VBCE.Label Label1

Height = 255

Left = 90

Top = 210

Width = 765

Caption = "Cliente :"

End

Begin VBCE.ComboBox cboClientes

Height = 300

Left = 900

Top = 180

Width = 2415

Enabled = -1 'True

Text = "cboClientes"

End

Begin VBCE.Label Label2

Height = 255

Left = 90

Top = 510

Width = 765

Caption = "Aplicacion:"

Enabled = -1 'True

End

Begin VBCE.ComboBox Combo1

Height = 300

Left = 900

Top = 480

Text = "Combo1"

End

Begin VBCE.Label Label3

Height = 225

Left = 60

Top = 810

Width = 795

Caption = "Problema:"<

No hay comentarios.: