Você está na página 1de 2

/*linha 1 - parametros do método que adiciona um label e um componente

*/
public void add(String label, JScrollPane componente){
/*
linha 2- criando um objeto para gerenciar cada componente que será inserido, com i
nformações de tamanho, largura, como se fosse um css. vamos imaginar um layout como
uma tabela, cada componete inserido será uma célula da tabela, e quem gerencia essa
célula é o GridBagConstraints.
*/
GridBagConstraints cons = new GridBagConstraints();
/*
linha 3 - o fill determinha como redimensionar o componente e não a célula. fill.NON
E = o componetne não será redimensionado, fill.HORIZONTAL= o componente será redimensi
onado horizontalmente. fill.vertical, e finalmente o fill.BOTH = o fill será redim
ensionaldo para todos os lados. lembrando que ele será redimensionado com o weight
x (largura) e weighty (altura). É como se fosse uma restrinção que você coloca de como o
componente pode ser redimensionado.
*/
cons.fill = GridBagConstraints.NONE;

/*
linha 3 - o anchor define em que posição da célula o componente irá aparecer.
*/
cons.anchor = GridBagConstraints.NORTHWEST;
/*
linha 4 - o insets indica as distancias entre os componentes do layout.
*/
cons.insets = new insets (4,4,4,4);
/*
linha 5 - weight especifica o percentual de crescimento da célula, não do component
e, pois o componente foi definido lá em cima no fill como NONE, logo não pode ser mu
dado. o valor padrão dos valores percentuais é 0 então se weigthx foi informado igual
a zero no primeiro componente o segundo weigthx colocado como 1 referenciando o
segundo componente terá o valor de largura máximo.
*/
cons.weigthx = 0;

/*
linha 6 - gridheight e gridwidth especificam o tamanho do componente baseado na
célula. indicará se o componete ocupará o tamanho de duas células, uma ou quantas forem
necessária para ir até o final da tela. Podem ser usadas duas constantes. REMAINDER
- fará com que o componente se estique até a última célula. RELATIVE - fará com que o com
ponente se estique até o final da tela com execeção da última.
*/
cons.gridwidth =1; // a largura do componente é baseado em uma célula.

/*
o this referencia a super classe Jframe que será chamado no método MAIN, o getConten
tPane mostra o nome do JLabel no painel , o add recebe como parâmetros um novo obj
eto JLabel passando a String recebido no parametro do método add, e os padrões defin
ido no gerenciador de layout para esse componente, com oobjeto cons.
*/
this.getContentPane().add(new JLabel(label), cons);