Gerenciadores de Layout

Quando um container tem mais de um componente, é preciso especificar como esses componentes devem ser dispostos na apresentação. Em Java, um objeto que implemente a interface LayoutManager é responsável por esse gerenciamento de disposição. A interface LayoutManager2 é uma extensão de LayoutManager que incorpora o conceito de restrições de posicionamento de componentes em um container.

Os principais métodos da classe Container relacionados ao layout de componentes são:

O pacote java.awt apresenta vários gerenciadores de layout pré-definidos. As classes FlowLayout e GridLayout são implementações de LayoutManager; BorderLayout, CardLayout e GridBagLayout são implementações de LayoutManager2. Swing acrescenta ainda um gerenciador BoxLayout.

Para determinar que o gerenciador de layout em um container c seja do tipo XXXLayout, é preciso invocar setLayout() passando como argumento um objeto gerenciador:

        c.setLayout(new XXXLayout());
    

Containers derivados da classe Window têm como padrão um gerenciador de layout do tipo BorderLayout, enquanto aqueles derivados de Panel usam como padrão FlowLayout.


© Ivan Luiz Marques Ricarte
DCA/FEEC/UNICAMP

Last modified: Sat Aug 12 14:50:41 Hora padrão leste Am. Sul 2000