Alguem pode me dizer pq o meu JButton ocupa a tela do aplicativo toda ? Eu até seto o tamanho e local dele e nada, se alguem puder me ajudar eu agradeço.
import javax.swing.*;
public class CadastroPessoa extends JFrame{
private JLabel lCodigo;
private JLabel lNome;
private JLabel lTelefone;
private JLabel lDescricao;
private JTextField tfCodigo;
private JTextField tfNome;
private JTextField tfTelefone;
private JTextArea taDescricao;
private JButton bCadastrar;
private JButton bSair;
public CadastroPessoa(){
lCodigo = new JLabel("Codigo: ");
lNome= new JLabel("Nome: ");
lTelefone= new JLabel("Telefone: ");
lDescricao= new JLabel("Descrição: ");
tfCodigo = new JTextField();
tfNome = new JTextField();
tfTelefone = new JTextField();
taDescricao = new JTextArea();
bCadastrar = new JButton("Cadastrar");
bCadastrar.setSize(10,20);
bCadastrar.setLocation(10,600);
bSair = new JButton("Sair");
bSair.setSize(10,20);
bSair.setLocation(50,600);
this.add(lCodigo);
this.add(lNome);
this.add(lTelefone);
this.add(lDescricao);
this.add(tfCodigo);
this.add(tfNome);
this.add(tfTelefone);
this.add(taDescricao);
this.add(bCadastrar);
this.add(bSair);
this.setSize(800,600);
this.setVisible(true);
}
public static void main(String args[]){
CadastroPessoa cp = new CadastroPessoa();
}
}
Tente colocar, antes de instanciar os componentes da tela (poderia ser depois, não tem problema)
setLayout(new FlowLayout());
Os componentes vão aparecer.
O que acontece é que, tanto um JFrame quanto o JPanel tem os seus gerenciadores de layout default, ai se vc não souber lidar com eles pode acontecer erros como esse (de aparecer somente o último componente que vc adicionou na tela).
Estude gerenciadores de layout. Quando vc achar que isso é um saco (quase todo mundo acha) configure o setLayout para null e coloque setBounds em todos os componentes…heeheheh
[quote=lucao]Alguem pode me dizer pq o meu JButton ocupa a tela do aplicativo toda ? Eu até seto o tamanho e local dele e nada, se alguem puder me ajudar eu agradeço.
[code]
import javax.swing.*;
public class CadastroPessoa extends JFrame{
private JLabel lCodigo;
private JLabel lNome;
private JLabel lTelefone;
private JLabel lDescricao;
private JTextField tfCodigo;
private JTextField tfNome;
private JTextField tfTelefone;
private JTextArea taDescricao;
private JButton bCadastrar;
private JButton bSair;
public CadastroPessoa(){
lCodigo = new JLabel("Codigo: ");
lNome= new JLabel("Nome: ");
lTelefone= new JLabel("Telefone: ");
lDescricao= new JLabel("Descrição: ");
tfCodigo = new JTextField();
tfNome = new JTextField();
tfTelefone = new JTextField();
taDescricao = new JTextArea();
bCadastrar = new JButton("Cadastrar");
bCadastrar.setSize(10,20);
bCadastrar.setLocation(10,600);
bSair = new JButton("Sair");
bSair.setSize(10,20);
bSair.setLocation(50,600);
this.add(lCodigo);
this.add(lNome);
this.add(lTelefone);
this.add(lDescricao);
this.add(tfCodigo);
this.add(tfNome);
this.add(tfTelefone);
this.add(taDescricao);
this.add(bCadastrar);
this.add(bSair);
this.setSize(800,600);
this.setVisible(true);
}
public static void main(String args[]){
CadastroPessoa cp = new CadastroPessoa();
}