layout

Páginas: 14 (3319 palabras) Publicado: 9 de abril de 2013
AWT - Layouts (I)
Anterior | Siguiente

Los layout managers o manejadores de composición, en traducción literal, ayudan a adaptar los diversos Componentes que se desean incorporar a un Panel, es decir, especifican la apariencia que tendrán los Componentes a la hora de colocarlos sobre un Contenedor, controlando tamaño y posición (layout) automáticamente. Java dispone de varios, en la actualversión, tal como se muestra en la imagen:

¿Por qué Java proporciona estos esquemas predefinidos de disposición de componentes? La razón es simple: imaginemos que se desean agrupar objetos de distinto tamaño en celdas de una rejilla virtual: si confiados en nuestro conocimiento de un sistema gráfico determinado, se codificase a mano tal disposición, se debería preveer el redimensionamiento delapplet, su repintado cuando sea cubierto por otra ventana, etc., además de todas las cuestiones relacionadas con un posible cambio de plataforma (uno nunca sabe a donde van a ir a parar los propios hijos, o los applets).
Sigamos imaginando, ahora, que un hábil equipo de desarrollo ha previsto las disposiciones gráficas más usadas y ha creado un gestor para cada una de tales configuraciones, que seocupará, de forma transparente para nosotros, de todas esas cuitas de formatos. Bien, pues estos gestores son instancias de las distintas clases derivadas de LayoutManager y que se utilizan en el applet que genera la figura siguiente, donde se muestran los diferentes tipos de layouts que proporciona el AWT.
El ejemplo java1320.java, ilustra el uso de paneles, listas, barras de desplazamiento,botones, selectores, campos de texto, áreas de texto y varios tipos de layouts.

En el tratamiento de los Layouts se utiliza un método de validación, de forma que los Componentes son marcados como no válidos cuando un cambio de estado afecta a la geometría o cuando el Contenedor tiene un hijo incorporado o eliminado. La validación se realiza automáticamente cuando se llama a pack() o show(). LosComponentes visibles marcados como no válidos no se validan automáticamente.
FlowLayout
Es el más simple y el que se utiliza por defecto en todos los Paneles si no se fuerza el uso de alguno de los otros. Los Componentes añadidos a un Panel con FlowLayout se encadenan en forma de lista. La cadena es horizontal, de izquierda a derecha, y se puede seleccionar el espaciado entre cada Componente.
Siel Contenedor se cambia de tamaño en tiempo de ejecución, las posiciones de los Componentes se ajustarán automáticamente, para colocar el máximo número posible de Componentes en la primera línea.
Los Componentes se alinean según se indique en el constructor. Si no se indica nada, se considera que los Componentes que pueden estar en una misma línea estarán centrados, pero también se puede indicarque se alineen a izquierda o derecha en el Contenedor.
El ejemplo que se presenta a continuación, java1321.java, es muy sencillito y lo que hace es colocar cinco objetos Button, sin funcionalidad alguna, sobre un objeto Frame, utilizando como controlador de posicionamiento un FlowManager. Los botones no son funcionales porque no se registra ningún objeto receptor de eventos sobre ellos.
importjava.awt.*;
import java.awt.event.*;

public class java1321 {
public static void main( String args[] ) {
// Instancia un objeto de tipo Interfaz Hombre-Maquina
IHM ihm = new IHM();
}
}

// La siguiente clase se utiliza para instanciar un objeto de tipo
// Interfaz Grafica de Usuario
class IHM {
public IHM() {
// Se crea un objeto Button conel texto que se pasa como
// parametro y el tamaño y posicion indicadas dentro de
// su contenedor (en pixels)
Button miBoton = new Button( "Boton" );
// Al rectamgulo se le pasan los parametros: x,y,ancho,alto
miBoton.setBounds( new Rectangle( 25,20,100,75 ) );

// Se crea un objeto Label con el texto que se indique como
//...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Layout
  • Layout
  • Layout
  • QUE ES LAYOUT
  • Layout
  • LAYOUT
  • Layout
  • Layout

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS