Containers

Dificilmente uma aplicação gráfica é composta por um único componente, mas sim por vários componentes inter-relacionados. Para este tipo de aplicação, um componente fundamental é a área onde os demais componentes da aplicação estarão dispostos. Um componente que pode conter outros componentes é denominado um container.

Em Java, a classe Container é a classe abstrata que define as funcionalidades básicas associadas a um container, tais como adicionar e remover componentes, o que é possível através dos métodos add() e remove(), respectivamente. É possível também estabelecer qual a estratégia de disposição de componentes no container, ou seja, qual o método de gerência de layout, através do método setLayout().

Window é uma classe derivada de Container cujos objetos estão associadas a janelas. Cada objeto Window é uma janela independente em uma aplicação, embora a essa janela não estejam associadas as funcionalidades usualmente oferecidas por gerenciadores de janela. Raramente um objeto desse é usado diretamente, mas objetos dessa classe são muito utilizados através de suas subclasses, tais como Frame.

Outra classe derivada de Container de extensa aplicação é Panel, que define uma área de composição de componentes contida em alguma janela. A classe Applet é uma extensão de Panel que permite criar applets.

Embora a classe JComponent, raiz da hierarquia para todos os componentes do novo framework para interfaces gráficas de Java, seja derivada da classe Container, não se pode acrescentar diretamente um componente gráfico a qualquer componente Swing. Para as classes de Swing que correspondem a containers no sentido definido em AWT, ou seja, às quais podem ser acrescentados outros componentes, deve-se obter uma referência ao objeto Container através do método getContentPane().


© Ivan Luiz Marques Ricarte
DCA/FEEC/UNICAMP

Last modified: Tue Jul 23 14:49:21 BRT 2002