Upload
jaziel-torres
View
1.157
Download
6
Embed Size (px)
Citation preview
ING. RAÚL JAZIEL TORRES TORRES MATRÍCULA: 1162800
Consultorio Médico
Eventos, Errores y Excepciones
Introducción
Cada programa hecho en Programación Orientada a Objetos debe de tener eventos, errores y/o excepciones. Con este fin se ha investigado sobre el asunto y se ha puesto en práctica estos conceptos.
Pantalla de prueba
Con el fin de probar estos conceptos se va a utilizar la
pantalla que servirá para dar de alta en el sistema.
Eventos
Un evento es una acción del usuario ante la cual puede realizarse algún proceso (por ejemplo, el cambio del valor de un formulario, o la pulsación de un enlace).
Para nuestro ejemplo pondremos como evento la pulsación a los botones de nuestra ventana.
A continuación veremos algo de código para estos eventos y luego un ejemplo visual.
Eventos
public boolean handleEvent( Event evt ) { if( evt.target instanceof Button ) { String boton = ( (Button)evt.target).getLabel();
if( boton.equals( "Alta" ) ) {
return( true );//Reacciona cuando el boton sea alta} if( boton.equals( "Salir" ) )
{ return( true );//Reacciona cuando el boton sea salir
} return false;
}
Eventos
Por ejemplo vamos a poner que cuando presione elboton salir le pregunte al usuario si desea salirrealmente.if( boton.equals( "Salir" ) ) { Object[] options = {"Yes","No"};
int n = JOptionPane.showOptionDialog(null,"Desea salir del sistema?","Salir", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null,options,options[1]); if(n == 0){ System.exit( 0 ); return true; }else{ AltaPaciente c = new AltaPaciente(); c.start(); return true; }
}
Eventos
La pantalla de reacción al evento de presionar el botón salir quedaría así:
Excepciones
Una excepción es un evento que ocurre durante la
ejecución del programa que interrumpe el flujo normal
de las sentencias. En nuestro programa podríamos manejar lasexcepciones en muchas partes del programa,
paramostrarlo solo utilizaré un ejemplo.Cuando el usuario en el nombre quiera ponernúmeros, entonces lanzaremos la excepción yavisaremos al usuario, que no es válido.
Excepciones
Para esto crearemos la clase que checa el nombre queno sea numérico y aquí pondremos la excepción:
private static boolean isNumeric(String cadena){try {Integer.parseInt(cadena);
return true;} catch (NumberFormatException nfe){
return false; }}
Después crearemos una ventana que avise de lasituación, aquí esta el código para avisar del error:
Excepciones
if(isNumeric(valorNombre)==true){ JOptionPane.showMessageDialog(null,"El nombre no
puede ser número.","Error",JOptionPane.ERROR_MESSAGE);
AltaPaciente c = new AltaPaciente(); c.start();}
Y esta es la pantalla que resulta del error:
Errores
Por último tenemos los errores que son normalmente
no recuperables y solo nos queda avisar al usuario
del error o cerrar el programa.
Para el ejemplo de estos utilizaré condicionales cuando
se cometan errores en el sistema, como dejarespacios en nulo.
El código es el siguiente:
Errores
if(valorNombre.length()==0){ JOptionPane.showMessageDialog(null,"El nombre no puede ir vacío.","Error",JOptionPane.ERROR_MESSAGE);
AltaPaciente c = new AltaPaciente(); c.start();}
Errores
if(valorApellidoP.length()==0){ JOptionPane.showMessageDialog(null,"El apellido paterno
no puede ir vacío.","Error",JOptionPane.ERROR_MESSAGE);
AltaPaciente c = new AltaPaciente(); c.start(); }