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

Generacion de controles en tiempo de ejecución. Ayuda!!!

Estas en el tema de Generacion de controles en tiempo de ejecución. Ayuda!!! en el foro de Java en Foros del Web. Hola a todos! Estoy creando una interfaz con Swing en eclipse (a través de visual editor). La idea es que inicialmente hay un solo jtextfield ...
  #1 (permalink)  
Antiguo 08/10/2008, 05:02
 
Fecha de Ingreso: febrero-2006
Mensajes: 174
Antigüedad: 18 años, 2 meses
Puntos: 0
Generacion de controles en tiempo de ejecución. Ayuda!!!

Hola a todos!

Estoy creando una interfaz con Swing en eclipse (a través de visual editor). La idea es que inicialmente hay un solo jtextfield y al lado un jbutton. si pulso el jbutton quiero que se me añada otro jtextfield debajo. Así doy la opción de añadir solo si se necesita. hasta aquí todo bien. Creo los jtextfield y los voy añadiendo uno debajo de otro.

El problema viene ahora: estos jtextfield se han creado en tiempo de ejecución y les he asignado el nombre con jtextfield.setName(i), donde i es un contador que controla cuántos jtextfield se han añadido ya. Pero ¿cómo puedo imprimir qué se ha escrito en cada jtextfield si todavía no sé cuántos va a haber ni cómo se llaman? ¿me explico? ¿Alguien sabe cómo hacerlo?

Por si acaso, pongo el trocito de código:


Código:
private JButton getMas() {
		if (mas == null) {
			mas = new JButton();
			mas.setBounds(new Rectangle(393, 77, 44, 31));
			mas.setFont(new Font("Dialog", Font.BOLD, 14));
			mas.setText("+");
			mas.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					
					i++;
					if(i<5){
						//añadir otro textbox y otros dos checkboxes
						JTextField f = new JTextField();
						f.setName("fecha_"+i);
						f.setBounds(new Rectangle(27, 76+i*40, 121, 34));
						jContentPane.add(f);
						refrescar();	
					}

				}
				
			});
		}
		return mas;
	}

Muchas gracias!
  #2 (permalink)  
Antiguo 08/10/2008, 10:19
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Generacion de controles en tiempo de ejecución. Ayuda!!!

Creas una lista y a medida que los creas y los añades al panel, los añades tambien a la lista para tener una referencia a ellos. Cuando quieras saber los TextField que tienes, sólo has de recorrer la lista.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
  #3 (permalink)  
Antiguo 09/10/2008, 02:10
 
Fecha de Ingreso: febrero-2006
Mensajes: 174
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Generacion de controles en tiempo de ejecución. Ayuda!!!

Gracias GreenEyed!

La verdad es que es una solución sencilla y me ha funcionado. No se me había ocurrido hacerlo así!! jejej

Muchas gracias!!
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 00:45.