Pessoal to com uma duvida e um problema, vamos la … como fazer aparece em um jpanel vazio, informacoes nessa tela depois de eu clicar em um JButton, ex: a jpanel ta vazia so contem 1 botao, quando eu clicar nesse botao inserir 3 jlabel e 3jtextfields? na jpanel?
se ficar dificil para entender pode pg que responde obrigado pessoal! vlw!
cara…sinceramente eu não entendi seu problema. vc quer adicionar componentes no JPanel através da ação de um botão? é isso?
isso, apos a ação do meu botao aparece os jlabels e jtextfield, e se o botao nao tiver ação a jpanel fica vazia contendo apenas o botao
algueim¿
Fiz algo parecido com o que você quer, da uma olhada nesse código e tenta quebrar a cabeça com isso ai um pouco
se não conseguir ainda assim, posta ai, se conseguir posta ai tb.
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
// implemets ActionListener é responsavel pela ação dos butões
public class Sdsd extends JFrame implements ActionListener{
Container c = new Container();
JPanel painel = new JPanel();
JButton mostrar = new JButton("Mostrar");
// Método Construtor
public Sdsd(){
this.setDefaultCloseOperation(EXIT_ON_CLOSE); // Para realmente o aplicativo quando clicar em fechar.
c = getContentPane();
painel.add(mostrar);
painel.setBackground(Color.white); // Seta a cor de fundo do painel pra branco
painel.setLayout(new GridLayout(4,2));
painel.setVisible(true);
c.add(painel);
// Adicionando ação pro butão
mostrar.addActionListener(this);
this.setSize(200,200);
}
public static void main(String [] args){
Sdsd teste = new Sdsd();
teste.show();
}
@Override
public void actionPerformed(ActionEvent e) {
setSize(201,201);
if (e.getSource() == mostrar){
painel.add(new JTextField("Exemplo 01"));
painel.add(new JTextField("Exemplo 02"));
painel.add(new JLabel("Exemplo 03"));
}
}
}
Espero ter ajudado.
cara esse codigo que vc me passo concerteza é o que eu precisava so preciso fazer algumas alteracoes vlw mesmo porem fiquei com uma dúvida veja se vc pode me esclarecer
if (e.getSource() == mostrar){
painel.add(new JTextField("Exemplo 01"));
painel.add(new JTextField("Exemplo 02"));
painel.add(new JLabel("Exemplo 03"));
}
nessa condicao acima so nao entendi como vou inserir os componentes em um local desejado! no teu caso as JTextField ficaro uma em cima da outra certo? como insiro isso no local desejado setBounds?