Los administradores de disposición (layout managers) organizan los componentes dentro de los contenedores y existen diferentes tipos como BorderLayout, FlowLayout y GridLayout. El método setLayout() se usa para establecer el administrador de disposición deseado. Los paneles también funcionan como contenedores y permiten agrupar componentes de forma más compleja.
1. Disposiciones de Contenedores
Ing. Josué Nicolás Pinzón Villamil
UPTC – FESAD
Tecnología en Programación de Sistemas Informáticos
2020-I
josue.pinzon@uptc.edu.co
2. (2020). Recuperado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
Administradores de Disposición
El método utilizado para agregar componentes se llama add().
Ej: añadir un botón al panel.
Jbutton btnBoton = new Jbutton (“Texto del botón”);
panel.add(btnBoton);
La función de add() a a depender del Administrador de disposición (layout) del contenedor que se use.
En java existen diversos administradores de disposición como los son: FlowLayout, BorderLayout,
GridLayout, por mencionar algunos.
Los objetos contenedores se apoyan en objetos LayoutManager
(administra d ores de disposición ).
Las clases que más se usan, que implementan la interfaz LayoutManager:
FlowLayout : un componente tras otro de izquierda a derecha.
BorderLayout : 5 regiones en el contenedor ( North , South , ...).
GridLayout : contenedor en filas y columnas.
3. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
Administradores de Disposición
El método utilizado para organizar el contenedor se llama setLayout():
Public void setLayout(LayoutManger lmgr)
Crea una disposición
para el contenedor
actual
Tipo de disposición
(BorderLayout)
setLayout(new BorderLayout());
setLayout(new FlowLayout());
setLayout(new GridLayout());
Nota: El layout manager elige la mejor posición y tamaño
de cada componente de acuerdo al espacio disponible.
4. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
Organización de contenedores
BorderLayout organiza el contenedor
en 5 zonas:(Norte, Sur, Este, Oeste y
Centro) :
FlowLayout Organiza los componentes
en un flujo de izquierda a derecha y de
arriba a bajo:
Nota: Para distribuciones más complejas podemos insertar paneles ( JPanel ) en los
contenedores y obtener el tamaño de un componente con el método getSize().
5. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
FlowLayout
Según el tamaño se
reorganizan los
componentes
6. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
BorderLayout
7. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
GridLayout
Este layout crea una zona de componente de Filas x Columnas y las acomoda de izquierda a
derecha y de arriba a bajo.
GridLayout nos presenta otro constructor que permite establecer una separación en pixeles entre
los componentes. Como vimos el anterior constructor no lo permitía puesto que esta separación
es 0.
Así, por ejemplo:
new GridLayout (3, 4, 2, 2)
Permite crear una organización de 3 filas por 4 Columnas en donde los componentes presentan
una separación de 2 pixeles
setLayout( new GridLayout( filas , columnas )
setLayout( new GridLayout(3, 4, 2, 2);
for ( inti = 0; i < 3 * 4; i++) {
add( newJButton(Integer.toString(i + 1)));
}
8. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
GridLayout
9. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
Paneles como contenedores
Un panel es como un contenedor en el cual podemos colocar y acomodar elementos como
pueden ser botones, campos de textos, etiquetas, casillas de verificación e inclusive otros
paneles.
botón
Campo de
texto
12
botones
Frame
Panel1
Panel2
10. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
Paneles como contenedores
Extraído de "Introduction to Java Programming“,de Y. Daniel Lang ( Prentice Hall, 2001)
11. (2020). Adaptado 15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf
Paneles como contenedores
Extraído de "Introduction to Java Programming“,de Y. Daniel Lang ( Prentice Hall, 2001)
12. Vamos a investigar
Vamos a observar detalladamente la imagen
adjunta:
Para cada palabra que puedan identificar deben
crear un ejemplo de agrupamiento de interfaces
Graficas, no se vale los ya mencionados en la
presentación
13. Referencias bibliográficas
• [1] Interfaces gráficas de usuario(Carlos Cervigón).(2020), Recuperado
15 April 2020, de
https://www.fdi.ucm.es/profesor/jpavon/poo/Tema6resumido.pdf