Foros del Web » Programación para mayores de 30 ;) » Java »

Problemas para optimizar un IF engorroso

Estas en el tema de Problemas para optimizar un IF engorroso en el foro de Java en Foros del Web. Hola a todos, mi problema es el siguiente tengo una pantalla con demasiados JTextField (todos llamados textoN donde N va de 1 a 40). Una ...
  #1 (permalink)  
Antiguo 26/06/2008, 21:01
 
Fecha de Ingreso: marzo-2008
Mensajes: 16
Antigüedad: 16 años, 1 mes
Puntos: 0
Problemas para optimizar un IF engorroso

Hola a todos, mi problema es el siguiente
tengo una pantalla con demasiados JTextField (todos llamados textoN donde N va de 1 a 40). Una vez que pulso un boton tengo que controlar que todos esten llenos y el codigo que estoy utilizando es bastante engorroso, ya que comparo 1 por 1 y no debe ser la mejor forma de hacerlo. Quisiera implementar un FOR incrementando en 1 el nombre del objeto, pero no tengo ni idea como hacerlo.
Si alguien me puede ayudar, voy a estar realmente agradecido.

Aca va mi codigo (lo reduje hasta 20, porque es mas de lo mismo...)

Código:
if ( texto1.getText().equals("") || texto2.getText().equals("") ||  texto3.getText().equals("") || texto4.getText().equals("") || texto5.getText().equals("") || texto6.getText().equals("")|| texto7.getText().equals("") || texto8.getText().equals("") || texto9.getText().equals("") || texto10.getText().equals("") || texto11.getText().equals("") || texto12.getText().equals("") ||
texto13.getText().equals("") || texto14.getText().equals("") || texto15.getText().equals("") || texto16.getText().equals("") || texto17.getText().equals("") || texto18.getText().equals("") || texto19.getText().equals("") || texto20.getText().equals("")) {
	    	
	    	ventanaError.setVisible(true);
	        labelError1.setVisible(true);	
	        labelError2.setVisible(false);

	    	}
  #2 (permalink)  
Antiguo 26/06/2008, 21:21
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: Problemas para optimizar un IF engorroso

Hola:

Tendrías que hacer un array de JTextField, en vez de poner cuarenta nombres de variables.

Código:
JTextField [] nombre = new JTextField(40);
for (int i=0;i<40; i++)
   nombre[i] = new JTextField(....);
...
Así puedes recorrerlos con un bucle siempre que lo necesites

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 26/06/2008, 21:37
 
Fecha de Ingreso: marzo-2008
Mensajes: 16
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Problemas para optimizar un IF engorroso

Muchas gracias Chuidiang, la verdad que como soy nuevo en esto ni se me habia ocurrido...
Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:03.