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

Agregar un Evento a un boton y ponerle parametro o acceder las variables de otro T_T

Estas en el tema de Agregar un Evento a un boton y ponerle parametro o acceder las variables de otro T_T en el foro de Java en Foros del Web. Bueno me explico, he creado dentro de un metodo algunas funciones para crear labels, paneles y botones dinamicamente, estos los creo dentro de un ciclo ...
  #1 (permalink)  
Antiguo 24/08/2010, 18:12
 
Fecha de Ingreso: abril-2008
Mensajes: 316
Antigüedad: 16 años
Puntos: 3
Agregar un Evento a un boton y ponerle parametro o acceder las variables de otro T_T

Bueno me explico, he creado dentro de un metodo algunas funciones para crear labels, paneles y botones dinamicamente, estos los creo dentro de un ciclo for el cual corre cierto numero de veces por lo que crea mas de uno pero en el caso de los labels, los crea con diferentes nombres,

for()
{

JLabel _jlLabel = new JLabel("nombre del label"); //el nombre cambia dependiendo de la vuelta del ciclo

JButon _jbBoton = new JButon("nombre del boton"); //el nombre tambien cambia dependiendo de la vuelta del ciclo

_jbBoton.addActionListener ( new java.awt.event.ActionListener ( ) {
public void actionPerformed(java.awt.event.ActionEvent evt ) {

JOptionPane.showMessageDialog(null, "Evento"); //solo esta de prueba el JOption

// Aqui me gustaria acceder a los label.


}
});
}

el problema es en los botones, al agregar el evento actionPerformed, no tengo mucha experiencia en java y nome di cuenta de que aunque este creando los label y los botones en el mismo metodo no se como funcione muy bien al crearle el AP al boton pero no puedo acceder a los labes, me gustaria tomar el nombre de estos dependiendo del boton que se presiono lo que no se es como accesar al label.

Alguna ayuda?? Estare pendiente y muchas gracias.
  #2 (permalink)  
Antiguo 24/08/2010, 18:30
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 2 meses
Puntos: 260
Sonrisa Respuesta: Agregar un Evento a un boton y ponerle parametro o acceder las variables d

Hola,

La primera idea que viene a la mente en este caso es crear un arreglo de botones y un arreglo de etiquetas, en donde los índices coincidan exactamente (arrays paralelos), eso en el caso que todos los botones necesiten acceso a todas las etiquetas.

El segundo caso sería amarrar un botón con una etiqueta, creado una clase que extienda el botón y guardando una referencia, por ejemplo:

Código:
package org.mypackage;

public class JButton extends javax.Swing.JButton {
  private javax.Swing.JLabel label;
  public JButton(String algo; javax.Swing.JLabel label) { // constructor
    super(algo);
    this.label = label;
  }
  public javax.Swing.JLabel getLabel() { // getter
    return this.label;
  }
  // setter...
  ...
}
Así cuando creas una instancia le pasas una etiqueta y quedan amarrados.

Código:
JLabel _jlLabel = new JLabel("nombre del label");
JButon _jbBoton = new JButon("nombre del boton", _jlLabel);
De esta forma cada _jbBoton conoce su etiqueta privadamente o públicamente por medio del getter.

Código:
this.label // la etiqueta privada del botón (solo privado)
_jbBoton.getLabel(); // si necesitas acceso público desde otro lugar
Saludos,
  #3 (permalink)  
Antiguo 24/08/2010, 18:58
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 2 meses
Puntos: 260
Sonrisa Respuesta: Agregar un Evento a un boton y ponerle parametro o acceder las variables d

Hola,

Posiblemente también tenga que aclarar que para obtener la referencia a un botón en el Action Listener lo tienes que hacer en el ActionEvent evt; puesto que el evento puede suceder mucho después que se crearon los botones.

Código:
public void actionPerformed(java.awt.event.ActionEvent evt ) {
  if (evt.getSource() instanceof org.mypackage.JButton) {
    ((org...JButton)evt.getSource()).....
Saludos,
  #4 (permalink)  
Antiguo 25/08/2010, 10:56
 
Fecha de Ingreso: abril-2008
Mensajes: 316
Antigüedad: 16 años
Puntos: 3
Respuesta: Agregar un Evento a un boton y ponerle parametro o acceder las variables d

hanckman graciasssssss.

Me gusto la idea de la clase y fue la que implemente no creo que tenga que poner el código hay lo pusiste mas que claro asi que muchas gracias por la ayuda, si en este foro se pudieran poner puntos te pondria los 10, Sale pues muchas gracias nuevamente no sabes cuantas horas de invetiacion me ahorraste GRACIASSSS.

Etiquetas: acceder, variables, parámetros, botones, eventos
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 22:59.