tengo una duda,tiene k haberla por internet,pero no se como buscarla.
os lo pongo aki.
me creo un textbox
JTextField tx1=new JTextField(10);
le doy el focuslistener
tx1.addFocusListener(this);
luego abajo,en el metodo listener
public void focusLost(FocusEvent e) {
}
mi duda es,si yo agrego el foco a otro textbox.
tx1.addFocusListener(this);
tx2.addFocusListener(this);
luego en el metodo focuslost,como se yo que componeneto lo pierde???
me explico, no existe alguna funcion tipo e.getName(); que me devuelva el nombre del componente que pierde/gana el foco???
k me devuelva (" tx1 ").
esk no logro encontrarlo
Esto es lo que tiene el FocusEvent
http://download.oracle.com/javase/1.4.2/docs/api/java/awt/event/FocusEvent.html
Como puedes ver, viene heredado el metodo getComponent() que te retorna el componente que ha disparado el evento.
Esto es lo que tiene la clase Component
http://download.oracle.com/javase/1.4.2/docs/api/java/awt/Component.html
Como puedes ver tiene el método getName().
Por ende:
e.getComponent().getName()
Te retornará el nombre del elemento.
(Esto viene desde antes de la 1.4, te funcionará para casi cualquier versión de Java, excepto para versiones demasiado antiguas).
si,es con el getName().
sabes cual era el problema.que yo definia un textbox
JTextField tx1=new .......
y keria k me devolviera tx1.
Luego,mas tarde me di cuenta que tenia k hacer el tx1.setName.
ese era mi problema,una vez creado el elemento,no le daba un nombre,pensaba k el propio programa lo hacia solo.
THX