Gerenciadores de Layout e Contêineres

Gerenciadores de layout são objetos que controlam o tamanho e a posição dos componentes em um contêiner.

Alguns beans Java permitem relacionamentos entre si. Por exemplo, a classe java.awt.Container permite que instâncias de java.awt.Component sejam incluídas nela como parte do relacionamento de seus componentes. Um exemplo de java.awt.Container é um painel ou um quadro. Um exemplo de java.awt.Component é um botão ou uma caixa de texto. A classe org.eclipse.swt.widgets.Composite do SWT permite que as instâncias de org.eclipse.swt.widgets.Control sejam incluídas como parte do relacionamento de seus controles. No visual editor para Java, os relacionamentos de restrição são mostrados nas visualizações Java Beans e Design. Ou seja, contêineres podem conter componentes ou outros contêineres.

Um gerenciador de layout é um objeto que controla o tamanho e a posição de componentes dentro de um contêiner. É possível definir o gerenciador de layout em um contêiner para nulo e permitir que cada componente se dimensione e se posicione. No entanto, em um layout nulo, a posição dos componentes da GUI não reagirão ao redimensionamento de uma janela. Com um gerenciador de layout, em vez de ter um tamanho e posição fixos para cada componente, o gerenciador de layout do contêiner delega o dimensionamento e o posicionamento de seus componentes.

A propriedade layout pode ser configurada para contêineres na visualização Propriedades.

Captura de Tela da Visualização Propriedades

Cada gerenciador de layout tem suas próprias regras para distribuir os componentes, mas a maioria dos gerenciadores de layout coloca cada componente para que ele seja pelo menos tão grande quanto seu tamanho preferido. O tamanho preferido dos componentes com cadeias visíveis ao usuário, como botão ou etiqueta, é calculado dinamicamente. Então, como o comprimento da cadeia é alterado devido a diferentes localidades ou fontes, o gerenciador de layout reposicionará cada componente. Como a janela é redimensionada por um usuário no tempo de execução, o gerenciador de layout também reposicionará cada componente para otimizar o novo tamanho global. Isso torna os gerenciadores de layout inestimáveis para construir as interfaces com o usuário que serão implementadas em um ambiente no qual as cadeias de etiqueta, fontes ou tamanho de janela podem variar (devido à localização, por exemplo).

Os contêineres Swing e AWT (Abstract Windows Toolkit) utilizam o mesmo conjunto de gerenciadores de layout, que são, na maior parte, objetos AWT. Os compostos do SWT (Standard Widget Toolkit) utilizam seus próprios gerenciadores de layout do SWT.

Nota: Se você utilizar um gerenciador de layout não fornecido no visual editor, a visualização Design ainda construirá o contêiner corretamente e apresentará os componentes. Porém, não será possível atualizar restrições utilizando a visualização Propriedades ou a visualização Design.
Tarefas Relacionadas
Customizando o Layout de UI no Visual Editor
Utilizando os Gerenciadores de Layout SWT
Utilizando os Gerenciadores de Layout Swing e AWT
Utilizando o Layout Nulo

(C) Direitos Autorais IBM Corporation 1999, 2004. Todos os direitos reservados.