Vamos a ir alterando los recursos de la ventana de la aplicación Java que estamos desarrollando con el AWT, para ir incorporando y visualizando los distintos Componentes que proporciona AWT. Insertemos algunas líneas de código en el constructor para inicializar la aplicación:
setFont( new Font( "TimesRoman",Font.PLAIN,12 ) );
setBackground( Color.white ); setForeground( Color.black );
setLayout( new BorderLayout() );
public void paint( Graphics g ) { g.setFont( new Font( "TimesRoman",Font.BOLD,24 ) ); g.setColor( Color.blue ); g.drawString( getTitle(),30,50 ); }
Panel p = new Panel(); p.add( new Button( "Aceptar" ) ); p.add( new Button( "Cancelar" ) ); add( "South",p );
Los Componentes se incorporan al Contenedor a través de los dos métodos add() que hay definidos:
add( Component c ); add( String s,Component c );
Los Componentes también se podían haber insertado en el Frame, organizándolos en una cierta forma, teniendo en cuenta que su manejador de composición es un BorderLayout. Por ejemplo:
add( "South",new Button( "Aceptar ) ); add( "South",new Button( "Cancelar" ) );
Hemos utilizado un Panel y no el segundo método, porque es más útil el organizar los Componentes en pequeñas secciones. Así, con nuestro código podemos considerar al Panel como una entidad separada del Frame, lo cual permitiría cambiar el fondo, layout, fuente, etc. del Panel sin necesidad de tocar el Frame.
Si ejecutamos de nuevo la aplicación con los cambios que hemos introducido, aparecerá ante nosotros la ventana que se muestra a continuación.
Si intentásemos en esta aplicación cerrar la ventana, no sucede nada. Cuando se intenta cerrar la ventana, el sistema envía un evento que no se está tratando. Incorporemos pues un controlador de eventos y empecemos tratando el evento WINDOW_DESTROY, generado cuando se intenta cerrar la ventana:
public boolean handleEvent( Event evt ) { switch( evt.id ) { case Event.WINDOW_DESTROY: { System.exit( 0 ); return true; } default: return false; } }Si ahora ejecutamos de nuevo la aplicación y cerramos la ventana... Efectivamente se cierra, tal como se suponía.
![]() |
|
[Anterior] [Indice] [Siguiente] |