Programación General > Java

 Procesamiento Del Foco

(1/1)

kike_monarcas:
Hola. Tengo una pequeña duda que tal vez para muchos sea una pregunta un tanto sencilla o tonta, pero por más que he buscado no puedo encontrar la forma de hacer lo siguiente. Tengo en un formulario un JDesktopPane y al iniciar el programa se le pregunta al usuario si desea abrir un JInternalFrame. Lo que pretendo es que al elegir la opción Si el JInternalFrame tome el foco en lugar del JFrame. El problema es que no se como asignarle el foco al marco interno y agradecería cualquier ayuda de su parte. El código se encuentra en el archivo adjunto. De antemano gracias por todos sus comentarios.

Saludos!  :hola:

robbie110487:
Solo anadi un par de lineas al metodo iniciarGUI de la clase FormaPrueba


--- Código: Text ---import java.awt.*;import java.awt.event.*;import javax.swing.*; public class PruebaFocoVentana {    public static void main( String args[] ){        JFrame ventana = new FormaPrueba();    }} class FormaPrueba extends JFrame{        public FormaPrueba(){        super( "Asignación del foco a una ventana" );        setSize( 400, 300 );        setDefaultCloseOperation( EXIT_ON_CLOSE );        setResizable( false );        setVisible( true );        iniciarGUI();    }        private void iniciarGUI(){        int res;        elEscritorio = new JDesktopPane();        getContentPane().add( elEscritorio );        res = JOptionPane.showConfirmDialog( this, "Abrir forma interna", "Aviso", JOptionPane.YES_NO_OPTION );        FormaInterna formainterna=new FormaInterna();                if( res == JOptionPane.YES_OPTION )            elEscritorio.add(formainterna);            try            {                formainterna.setSelected(true);            }            catch (Exception e) { }    }        private JDesktopPane elEscritorio;} class FormaInterna extends JInternalFrame{         public FormaInterna(){        super( "Forma Interna", false, true, false, true  );        iniciarGUI();        setVisible( true );        pack();        requestFocus();            }        private void iniciarGUI(){        contenedor = getContentPane();        contenedor.setLayout( new FlowLayout() );        campo = new JTextField( 10 );        contenedor.add( campo );        campo.requestFocus();            }        public Dimension getPreferredSize(){        return new Dimension( 350, 250 );    }        private Container contenedor;    private JTextField campo;} 
Un saludo  :comp:

kike_monarcas:
Gracias por la ayuda robbie110487, ahora he resolvido mi duda.

Saludos!  :hola:

Navegación

[0] Índice de Mensajes

Ir a la versión completa