Duvida GridLayout

1 resposta
alisson027

uma vez perguntei sobre posicionamento de componentes me passaram varias formas porem me sugeriram a aprender sobre "layoutmanagers" no momento usei o setLayout(null) e o setBounds por ser mais fácil e rápido pois tinha prazo para o trabalho, mas quero aprender a fazer do modo correto começando pelo "GridLayout", mas não consigo colocar os componentes corretamente eles não passam para a próxima linha e parecem esticados no tamanho da tela
pelo q eu tinha entendido o "wrap" seria para passar para a próxima o que não esta acontecendo, onde eu estou errando?

import java.awt.Container;
import java.awt.GridLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;


public class Principal extends JFrame {

	
	 JTextField text1,text2,text3;
	 JLabel label1,label2,label3;
	
	
	
	public Principal(){
		super("Nossa primeira janela");
		Container tela = getContentPane();
		setLayout( new GridLayout());
		
		text1 = new JTextField(20);
		text2 = new JTextField(20);
		text3 = new JTextField(20);
		
		label1 = new JLabel ("nome");
		label2 = new JLabel ("endereço");
		label3 = new JLabel ("telefone");
		
	
		
		tela.add(text1);
		tela.add(text2);
		tela.add(text3, "wrap");  //pular para proxima linha
		tela.add(label1, "wrap"); // pular para proxima linha
		tela.add(label2);
		tela.add(label3);
		
		
	
	
	}
	public static void main(String[] args) {
		Principal app = new Principal();
		app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
		app.setVisible (true);
		app.setSize(800,600);
	}

}

1 Resposta

Eric_Yuzo

O GridLayout redimensiona os componentes para ocupar todo o container, isso é normal.

Chamando o construtor padrão, é criado um grid que vai colocando os componentes em uma única linha. Se quiser especificar o número de linhas e colunas, passe os valores pelo construtor.

A constraint “wrap” realmente serve para quebrar a linha, porém este é um recurso do MigLayout e não do GridLayout.

Criado 12 de dezembro de 2010
Ultima resposta 12 de dez. de 2010
Respostas 1
Participantes 2