JFrame -&gt GridLayout

5 respostas
L

Boa noite!

Quero criar uma tela, porém tenho alguns problemas para ajustar os campos com GridLayout...

Quero ajustar o tamanho de cada linha da Grid, pois os componentes tem tamanhos diferentes.

Exemplo: linha 1: (Label | JTextField)
linha 2: (Label | JList)

linha 1 com altura 50, e linha 2 com altura 200.

É possível?

5 Respostas

java_Regi

cara,
tenta usar o Layout nulll.

e colocar seus campos na tela com o

SEUCAMPO.setBounds( x,y,x,z );

x = >>>>>>> ( frente )
y = |(baixo )
|
|
x = tamanho
z = largura

espero ter ajudado.
até

L

tranquilo…

Tipo o que eu quero é o que o GridLayout faz, porem podendo ajustar as linhas.
Sem especificar posicao na tela.

Mas o ponto e…

com 10 campos:

x = new JPanel(new GridLayout(10,2));

x.add(getLabel1);
x.add(getText1);

ate

x.add(getLabel10);
x.add(getText10);

Assim a tela fica bem dividida! Porem com 2 campos fica uma merda.

Mas obrigado!

herbertpimentel

Dica amigao,

faz tempo que desistir de brigar com o swing. esse esquema de gerenciador de layout é um porre, pricipalmente pra quem vem de outra linguagem... como eu que vim .net e do delphi.   O que aconselho é usar o netbeans, nao tem igual. Com o netbenas vc posisiona os seus componetes na tela tal como nas outras linguagens e ferramentas, e por baixo o netbeans se preocupa em utilizar os gerenciadores de laytou mais adequados. é show... sem falar que ainda vem muita novidade na nova versao dele.

no stress… be productive is the best way :smiley:

da uma olhada no link http://www.netbeans.org/kb/55/quickstart-gui.html é o quick start do netbeans :wink:

Metaleiro

[color=darkblue]Sim é possível, eu utilizo dessa forma, é só você adaptar para o seu JFrame: [/color]

[color=darkblue]Segue a maneira como utilizo :[/color]

panelButton.setLayout(new GridBagLayout());
        TitledBorder border = new TitledBorder("Atualizar");
        border.setTitleColor(Color.BLACK);
        border.setBorder(BorderFactory.createLineBorder(Color.BLUE, 1));
        panelButton.setBorder(border);
        
        panelButton.add(new JLabel("Atualização : "),
                new GridBagConstraints(0, 1, 1, 1, 0, 0,
                        GridBagConstraints.WEST, GridBagConstraints.NONE,
                        new Insets(10, 10, 5, 5), 0, 0));
        panelButton.add(textWay,
                new GridBagConstraints(1, 1, 1, 1, 1, 0,
                        GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5,
                                5), 0, 0));
        panelButton.add(importar,
                new GridBagConstraints(2, 1, 1, 1, 1, 0,
                        GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5,
                                5), 0, 0));
        panelButton.add(confirmar,
                new GridBagConstraints(1, 3, 1, 1, 1, 0,
                        GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5,
                                5), 0, 0));

        setLayout(new BorderLayout(0, 0));
        
        JPanel pnlParametro = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));
        
        pnlParametro.add(panelButton);
L

Valeu galera!

Criado 23 de maio de 2007
Ultima resposta 25 de mai. de 2007
Respostas 5
Participantes 4