Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Pregunta JCalendar

tengo un problema con el jdatechooser se selecciona una fecha con el metodo propertychange, en vez de enviar el foco a un jtextfield llamado txtAdmin envía a otro componente ... a este le asigné el texto de prueba "Mi Texto" y sin problema; pero el foco lo envía a otro componente.
Ni con gradFocus ni con requestFocus envía el foco al componente,.
Este es el codigo

private void agregarOyenteFechaEmision() {
txtfecemi.addPropertyChangeListener(
new java.beans.PropertyChangeListener() {
@Override
public void propertyChange(java.beans.PropertyChangeEvent evt) {
if (evt.getPropertyName().compareTo("date") == 0) {
txtAdmin.setText("Mi texto");
txtAdmin.grabFocus();
}
}
});
}

octubre 24, 2012 | Registered Commenterdannyverm

El método recomendado es requestFocusInWindow()
http://docs.oracle.com/javase/7/docs/api/java/awt/Component.html#requestFocusInWindow()

octubre 24, 2012 | Registered Commenterchoces

gracias choces voy a probar

octubre 24, 2012 | Registered Commenterdannyverm

choces: no se solucionó el problema da lo mismo con requestFocusInWindow()

octubre 24, 2012 | Registered Commenterdannyverm

Prueba con esto, a ver que pasa:

EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
txtAdmin.requestFocusInWindow();
}
});

Si funciona bien... me dará mucho en qué pensar :/

octubre 24, 2012 | Registered Commenterchoces

choces: me hace lo mismo, que cagada!
aun si le quito el oyente y sin ningún evento hace lo mismo

octubre 24, 2012 | Registered Commenterdannyverm

¿Está ese JTextField en la misma ventana que donde está el foco?

octubre 24, 2012 | Registered Commenterchoces

ocurrió algo muy raro, al sacarle el focuslost de un componente como 4 componentes ante se resolvió el problema y funciona perfecto solo con el txtAdmin.requestFocusInWindow(); (Algo muy raro por que ni siquiera hacía referencia a mi txtAdmin el focuslost) te agradezco mucho la paciencia y abusando de tu generosidad será que podes mirar el siguiente hilo, es sobre otro problema que tengo
http://www.javahispano.org/java-se/post/1989211

octubre 24, 2012 | Registered Commenterdannyverm

Depende de lo que hiciese el código dentro de ese focusLost.
La gestión de foco en Swing es... misteriosa, cuando menos :D

octubre 24, 2012 | Registered Commenterchoces