Вы находитесь на странице: 1из 6

Ing.

Oscar Ascn Valdivia 1


Mens
Controles de tipo men
El men es uno de los tipos de control ms frecuentemente utilizados en los formularios
Windows.
Consiste en un conjunto de opciones, a travs de las cuales, el usuario ejecutar algunos procesos
de la aplicacin.
Men Principal. MenuStrip
Un control MainMenu, consiste en un conjunto de opciones que se sitan horizontalmente
debajo del ttulo del formulario. A partir de cada opcin, podemos asociar a su vez, grupos de
opciones que se mostraran verticalmente al hacer clic en la opcin principal o situada en la barra
horizontal.
Al hacer clic en la primera opcin del men, podemos dar nombre y propiedades a esa opcin.
Al mismo tiempo, de un modo muy intuitivo, veremos las prximas opciones disponibles, tanto
las desplegables a partir de dicho men, como las de la barra principal. Slo hemos de movernos
en la direccin que necesitemos y dar nombre a las opciones, y valores a sus propiedades.
Ing. Oscar Ascn Valdivia 2
Entre las propiedades disponibles para un MenuItem, podemos destacar las siguientes.
Text. Contiene una cadena con el literal o texto descriptivo de la opcin de men.
Enabled. Permite habilitar/deshabilitar la opcin de men. Cuando se encuentra deshabilitada,
se muestra su nombre en un tono gris, indicando que no puede ser seleccionada por el usuario.
Checked. Marca/desmarca la opcin. Cuando una opcin est marcada, muestra junto a su
nombre un pequeo smbolo de verificacin o punteo.
ShortCutKey. Se trata de un atajo de teclado, o combinacin de teclas que nos van a permitir
ejecutar la opcin de men sin tener que desplegarlo. Al elegir esta propiedad, aparecer una
lista con todos los atajos disponibles para asignar.
Visible. Muestra u oculta la opcin de men.
PRACTICA
1. Desarrollar un sistema que permita validar al usuario, si la clave es la correcta, este
deber llamar a un formulario que contenga un Menu que interactu con los dos casos
siguientes.
2. Disear un formulario que permita registrar los datos de alumnos (DNI, Nombres,
Apellidos, Carrera), solo debe permitir registrar 10 alumnos de Ing. De Sistemas, 8 de
Contabilidad, 5 de Medicina y 7 de Derecho.
3. Disear un formulario que permita registrar los datos de un trabajador (DNI, Nombres,
Apellidos, Sueldo), solo debe permitir registrar 10 trabajadores, el programa debe
permitir agregar y eliminar trabajadores, adems debe de mostrar el movimiento de la
cantidad de trabajadores y el monto de los sueldos.
Ing. Oscar Ascn Valdivia 3
MANIPULACIN DE ERRORES
Errores, ese mal comn
Difcil es, por no decir imposible, encontrar al programador que no tenga errores en su cdigo.
Por mucho cuidado que pongamos al codificar nuestras aplicaciones, los errores de ejecucin
sern ese incmodo, pero inevitable compaero de viaje que seguir a nuestros programas all
donde estos vayan.
En primer lugar, antes de abordar el tratamiento de errores en nuestras aplicaciones, y los
elementos que nos proporciona el entorno para manipularlos, podemos clasificar los tipos de
errores en una serie de categoras genricas.
Errores de escritura
Son los de localizacin ms inmediata, ya que se producen por un error sintctico al escribir
nuestro cdigo, y gracias al IDE de Visual Studio .NET, podemos detectarlos rpidamente.
Cuando escribimos una sentencia incorrectamente, dejamos algn parntesis sin cerrar, etc., el
IDE subraya la parte de cdigo errnea, y nos muestra un mensaje informativo del error al situar
el cursor del ratn sobre el mismo.
Errores de ejecucin
Este tipo de errores son los que provocan un fallo en la ejecucin del programa y su interrupcin.
No obstante, si utilizamos los gestores de error que proporciona la herramienta de desarrollo
correspondiente, podremos en algunos casos, evitar la cancelacin de la ejecucin, recuperando
su control. El ejemplo del Cdigo fuente provoca un error, ya que se intenta asignar un valor que
no corresponde al tipo de dato de una variable.
Dim dtFecha As Date
dtFecha = "prueba"
Los errores de ejecucin son el objetivo del presente tema; sobre su captura y manipulacin nos
centraremos a lo largo de la presente clase.
Errores lgicos
Estos errores son los de ms difcil captura, ya que el cdigo se encuentra correctamente escrito,
producindose el problema por un fallo de planteamiento en el cdigo, motivo por el cual, por
ejemplo, el control del programa no entra en un bucle porque una variable no ha tomado
determinado valor; el flujo del programa sale antes de lo previsto de un procedimiento, al evaluar
una expresin que esperbamos que tuviera un resultado diferente, etc.
Errores y excepciones
Dentro del esquema de gestin de errores del entorno .NET Framework, encontramos las figuras
del error y la excepcin. Estos elementos son utilizados indistintamente en muchas ocasiones
para hacer referencia genrica a los errores producidos; sin embargo, aunque complementarios,
cada uno tiene su propia funcionalidad dentro del proceso de tratamiento de un error.
Error. Un error es un evento que se produce durante el funcionamiento de un programa,
provocando una interrupcin en su flujo de ejecucin. Al producirse esta situacin, el error
genera un objeto excepcin.
Excepcin. Una excepcin es un objeto generado por un error, que contiene informacin sobre
las caractersticas del error que se ha producido.
Ing. Oscar Ascn Valdivia 4
Manipuladores de excepciones
Un manipulador de excepcin es un bloque de cdigo que proporciona una respuesta al error que
se ha producido, y que se incluye en una estructura proporcionada por el lenguaje a tal efecto, es
ecir, para la captura de excepciones.
La estructura Try...End Try
Esta estructura de control del lenguaje, proporciona el medio para definir un bloque de cdigo
sensible a errores, y los correspondientes manipuladores de excepciones, en funcin del tipo de
error producido.
SINTAXIS
Try
' cdigo que puede provocar errores
' ....
' ....
[Catch [Excepcion [As TipoExcepcionA]] [When Expresin]
' respuesta a error de tipo A
' ....
[Exit Try]
]
[Catch [Excepcion [As TipoExcepcionN]] [When Expresin]
' respuesta a error de tipo N
' ....
[Exit Try]
]
[Finally
' cdigo posterior al control de errores
' ....
]
End Try
Analicemos con detalle los principales elementos de esta estructura.
En primer lugar nos encontramos con su declaracin mediante la palabra clave Try. Todo el
cdigo que escribimos a partir de dicha palabra clave, y hasta la primera sentencia Catch, es el
cdigo que definimos como sensible a errores, o dicho de otro modo, el bloque de instrucciones
sobre las que deseamos que se active el control de errores cuando se produzca algn fallo en su
ejecucin.
A continuacin, establecemos cada uno de los manipuladores de excepcin mediante la palabra
clave Catch. Junto a esta palabra clave, situaremos de forma opcional, un identificador que
contendr el objeto con la excepcin generada. Finalmente, y tambin de modo opcional, con la
palabra clave When, especificaremos una condicin para la captura del objeto de excepcin.
Podemos escribir uno o varios manipuladores Catch dentro de una estructura de control
Try...End Try.
Ing. Oscar Ascn Valdivia 5
Cada vez que se produzca un error, el flujo de la ejecucin saltar a la sentencia Catch ms
acorde con el tipo de excepcin generada por el error, siempre y cuando hayamos situado varios
manipuladores de excepciones en el controlador de errores.
Tanto si se produce un error como si no, la sentencia Finally de la estructura Try...End Try, nos
permite escribir un bloque de cdigo que ser ejecutado al darse una condicin de error, o bajo
ejecucin normal del procedimiento.
La clase Exception
Como hemos explicado, cada vez que se produce un error, el entorno de ejecucin genera una
excepcin con la informacin del error acaecido.
Para facilitarnos la tarea de manipulacin de la excepcin producida, en un controlador de
excepciones obtenemos un objeto de la clase Exception, o de alguna de sus derivadas, de forma
que, a travs de sus miembros, podemos saber qu ha pasado. Entre las propiedades y mtodos
que podemos utilizar, se encuentran las siguientes.
Message. Descripcin del error.
Source. Nombre del objeto o aplicacin que provoc el error.
StackTrace. Ruta o traza del cdigo en la que se produjo el error.
Casos Practicos
1. Implementar un formulario que permita controlar los errores, por ejemplo dividir un numero
entre cero.
Private Sub btndividir_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btndividir.Click
Dim x, y, d As Double
Try
x = Me.txtnum1.Text 'Bloque de cdigo
y = Me.txtnum2.Text
d = x \ y
Me.txtresultado.Text = d
Catch ex As Exception 'Tratamiento del error
MsgBox(ex.Message, MsgBoxStyle.OKOnly, "Controlador de error")
End Try
End Sub
Ing. Oscar Ascn Valdivia 6
2. Disear e implementar un formulario que permita Agregar y eliminar elementos a listas.
Private Sub btnagregar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnagregar.Click
Try
Me.lstapellidos.Items.Add(Me.txtapellidos.Text)
Me.lstdni.Items.Add(Me.txtdni.Text)
Me.lstnombres.Items.Add(Me.txtnombres.Text)
Catch err As Exception
MessageBox.Show(err.Message)
End Try
End Sub

Вам также может понравиться