jueves, 13 de noviembre de 2008






Se desea elaborar una aplicación que permita controlar el proceso de matrícula en un curso de computación. Para ello se deben recabar los siguientes datos: 1) Curso en que se matricula el alumno, 2) Fecha de matrícula, 3) Apellidos y nombres, 4) Sexo, 5) Dirección, y 6) Distrito de residencia. El diseño de la interfaz debe ser similar a la figura mostrada:









Para seleccionar un curso el usuario deberá hacer click en el botón punteado que se encuentra al lado de la caja de texto. En seguida se presentará un menú de selección por realce en el cual se presenta la relación de todos los cursos disponibles. El curso quedará seleccionado al hacer click en el botón Aceptar.






El mismo tipo de selección deberá realizarse al momento de ingresar el nombre del distrito.






Para el desarrollo de esta aplicación necesitamos tres formularios y un módulo. En primer lugar proceda a añadir un módulo de código al proyecto. Seleccione el Menú Proyecto y elija la opción Agregar módulo.






Del cuadro de diálogo Agregar módulo, en la ficha Nuevo, haga click en el botón Abrir. Luego ingrese el siguiente código en la sección de Declaraciones del módulo que acabamos de añadir:

Public Curso As String
Public Distrito As String
En seguida proceda a cambiar el nombre formulario principal por FrmFichaMatricula. Luego debe añadir los demás formularios necesarios para construir la aplicación. Para tal fin, seleccione el menú Proyecto y elija la opción Agregar formulario. Del cuadro de diálogo Agregar formulario, en la ficha Nuevo, elija la opción Formulario y haga click en el botón Abrir.






En ese instante se añadirá un nuevo formulario al proyecto. Cambie el nombre del nuevo formulario por FrmCurso. Repita el procedimiento anterior para añadir el formulario FrmDistrito.






A continuación copie los pasos del anterior formulario de ficha de matricula con los siguientes cambios:



Añadir sólo 2 marcos. No añadir ningún control de lista. En vez de 4 botones de comando, añadir 6 botones de comando. Luego, establecer las siguientes propiedades para los dos nuevos botones:






Command5

Nombre:CmdCurso

Caption: . . .

Command6

Nombre:CmdDistrito

Caption: . . .



Luego, reemplazar el código del evento Load del formulario por el siguiente:






Private Sub Form_Load()
CboSexo.AddItem "Masculino"
CboSexo.AddItem "Femenino"
End Sub






Luego, suprimir el código asociado al evento Click de los controles de lista LstCursos y LstDistrito. En su lugar añadir lo siguiente:

Private Sub CmdCurso_Click()
Load FrmCurso
FrmCurso.Show vbModal
TxtCurso = Curso
End Sub

Private Sub CmdDistrito_Click()
Load FrmDistrito
FrmDistrito.Show vbModal
TxtDistrito = Distrito
End Sub

A continuación active el formulario FrmCurso, para ello haga click sobre el mismo. En seguida proceda a ubicar los siguientes controles en el formulario:

1 control de lista
1 botones de comando
Luego proceda a establecer las propiedades según se indica:

Form2

Nombre
FrmCurso

BorderStyle
3-Fixed Dialog

Caption
Cursos

List1

Nombre
LstCursos

Text


Command1

Nombre
CmdAceptar

Caption
&Aceptar



Una vez establecidas las propiedades proceda a ingresar el código que se indica a continuación:

Private Sub CmdCancelar_Click()
If MsgBox("¿Desea modificar algún dato?", _
vbQuestion + vbYesNo, "Mensaje") = vbYes Then
LstCursos.Enabled = True
LstDistrito.Enabled = True
TxtCurso.Locked = False
TxtFechaMat.Locked = False
TxtAlumno.Locked = False
CboSexo.Locked = False
TxtDireccion.Locked = False
TxtDistrito.Locked = False
End If



End Sub









Private Sub CmdCurso_Click()
Load FrmCursos
FrmCursos.Show vbModal
TxtCurso = Curso

End Sub









Private Sub CmdDistrito_Click()
Load FrmDistrito
FrmDistrito.Show vbModal
TxtDistrito = Distrito

End Sub









Private Sub CmdGuardar_Click()
LstCursos.Enabled = False
LstDistrito.Enabled = False
TxtCursos.Locked = True
TxtFechaMat.Locked = True
TxtAlumno.Locked = True
CboSexo.Locked = True
TxtDireccion.Locked = True
TxtDistrito.Locked = True
MsgBox "Alumno matriculado", vbInformation, "Mensaje"

End Sub









Private Sub CmdLimpiar_Click()
LstCursos.Enabled = True
LstDistritos.Enabled = True
TxtCurso.Locked = False
TxtFechaMat.Locked = False
TxtAlumno.Locked = False
CboSexo.Locked = False
TxtDireccion.Locked = False
TxtDistrito.Locked = False
TxtCurso = ""
TxtFechaMat = ""
TxtAlumno = ""
CboSexo = ""
TxtDireccion = ""
TxtDistrito = ""
TxtCurso.SetFocus

End Sub









Private Sub CmdSalir_Click()
Unload Me
End Sub






Private Sub Form_Load()
CboSexo.AddItem "Masculino"
CboSexo.AddItem "Femenino"

End Sub









Private Sub Form_Unload(Cancel As Integer)
If MsgBox("¿Desea terminar la aplicación?", _
vbQuestion + vbYesNo, "Pregunta") = vbYes Then
End
Else
Cancel = True
Call CmdLimpiar_Click
End If

End Sub










Private Sub LstCursos_Click()
TxtCursos = LstCursos
End Sub









Private Sub LstDistrito_Click()
TxtDistrito = LstDistrito



End Sub









FORMULARIO DE CURSOS



En este formulario agregamos 1listbox y 1 comando.

Introducimos los siguientes códigos:


Private Sub CmdAceptar_Click()
Curso = LstCursos.Text
FrmCursos.Hide

End Sub



Private Sub Form_Load()
LstCursos.AddItem "Borland C++ Nivel I"
LstCursos.AddItem "Borland C++ Nivel II"
LstCursos.AddItem "Microsoft Visual Basic Nivel I"
LstCursos.AddItem "Microsoft Visual Basic Nivel II"
LstCursos.AddItem "Microsoft Visual FoxPro Nivel I"
LstCursos.AddItem "Microsoft Visual FoxPro Nivel II"
LstCursos.AddItem "Microsoft Visual C++ Nivel I"
LstCursos.AddItem "Microsoft Visual C++ Nivel II"
LstCursos.AddItem "Microsoft SQL Server Nivel I"
LstCursos.AddItem "Microsoft SQL Server Nivel II"
LstCursos.AddItem "Microsoft Power Builder Nivel I"
LstCursos.AddItem "Microsoft Power Builder Nivel II"

End Sub
FORMULARIO DE DISTRITOS


En este formulario agregamos 1listbox y 1 comando.
Introducimos los siguientes códigos:
Private Sub CmdAceptar_Click()
Distrito = LstDistritos.Text
FrmDistrito.Hide
End Sub
Private Sub Form_Load()
LstDistritos.AddItem "Carabayllo"
LstDistritos.AddItem "Comas"
LstDistritos.AddItem "Chaclacayo"
LstDistritos.AddItem "Callao"
LstDistritos.AddItem "Lima"
LstDistritos.AddItem "Chorrillos"
LstDistritos.AddItem "La Molina"
LstDistritos.AddItem "La victoria"
LstDistritos.AddItem "Lince"
LstDistritos.AddItem "El Agustino"
LstDistritos.AddItem "Lurigancho"
End Sub

0 comentarios: