Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Problema con obtener el foco de un componente Swing

Hola a todos,
tengo un formulario con unos campos de texto (JFormattedTextField) y unos botones (JButton) y me gustaría que el botón obtuviera el foco...ya que al arrancar la aplicación lo obtiene el campo de texto que está más a la izquiera de la ventana.
Estoy usando el método requestFocus(), resquestFocusInWindow() de ese botón que quiero que obtenga el foco...pero nada..no hay manera...no me hace caso..lo sigue obtiene la caja de texto...ayudaaaa!!!!
Gracias.
Saludos.

diciembre 30, 2012 | Unregistered Commentershao

http://docs.oracle.com/javase/tutorial/uiswing/misc/focus.html

"If you want to ensure that a particular component gains the focus the first time a window is activated, you can call the requestFocusInWindow method on the component after the component has been realized, but before the frame is displayed. The following sample code shows how this operation can be done:

//...Where initialization occurs...
JFrame frame = new JFrame("Test");
JPanel panel = new JPanel(new BorderLayout());

//...Create a variety of components here...

//Create the component that will have the initial focus.
JButton button = new JButton("I am first");
panel.add(button);
frame.getContentPane().add(panel); //Add it to the panel

frame.pack();

//Realize the components.
//This button will have the initial focus.
button.requestFocusInWindow();
frame.setVisible(true); //Display the window."

diciembre 30, 2012 | Registered Commenterchoces

Sobre requestFocus()

http://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html#requestFocus()

"Note that the use of this method is discouraged because its behavior is platform dependent. Instead we recommend the use of requestFocusInWindow()"

diciembre 30, 2012 | Registered Commenterchoces