[RESOLVIDO] Como colocar Botões, caixa de texo em Applets?

2 respostas
T

Eu estava aprendendo sobre GridBagLayout e tentei fazer um applet usando esse layout, mas não saiu mto certo...

eu queria que o Slider e os botões ficassem no rodapé do Applet com uma altura definida em pixels (10 pixels), e a TextArea ocupasse todo o resto, mas não consegui alocar os botões...

aqui vai o código
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JSlider;
import javax.swing.JTextArea;

/**
 *
 * @author Ton
 */
public class NewJApplet extends JApplet {

    private JTextArea pick;
    private JSlider passoSlider;
    private JButton btnApaga;
    private JButton btnReset;

    @Override
    public void init() {
        
        pick = new JTextArea();
        passoSlider = new JSlider(5, 50, 10);
        btnApaga = new JButton("Apaga");
        btnReset = new JButton("Reset");

        Container c=getContentPane();
        GridBagConstraints cons = new GridBagConstraints();
        GridBagLayout layout = new GridBagLayout();
        c.setLayout(layout);

        cons.gridx = 0;
        cons.gridy = 0;
        cons.gridwidth = 6;
        cons.weightx = 1;
        cons.weighty = 0.95;
        cons.fill = GridBagConstraints.BOTH;
        c.add(pick, cons);

        cons.gridx = 0;
        cons.gridy = 1;
        cons.gridwidth = 4;
        cons.weighty = 0.05;
        c.add(passoSlider, cons);

        cons.gridx = 4;
        cons.gridy = 1;
        cons.gridwidth = 1;
        cons.weighty = 0.05;
        c.add(btnApaga);

        cons.gridx = 5;
        cons.gridy = 1;
        cons.weighty = 0.05;
        c.add(btnReset);
    }
}

alguem sabe qual o problema?

2 Respostas

M

Sua lógica está certa. Só faltou uma coisa: atenção.

Quanto você adiciona os botões você deve passar o GridBagConstraints como segundo argumento:

c.add(btnApaga, cons);
// ....
c.add(btnReset, cons);
T

my bad >.<"

vlw!

Criado 21 de janeiro de 2010
Ultima resposta 21 de jan. de 2010
Respostas 2
Participantes 2