Incluindo uma Classe JPanel dentro do JTabbedPane

1 resposta
E

Boa tarde galera,
Estou desenvolvendo o meu trabalho final de curso e fiquei encarregado de trabalhar a interface.
Gostaria da ajuda de vocês...

Criei um Frame que tem o JTabbedPane com suas abas...... Até ai normal, porém, criei uma outra classe com o JPanel. Pois bem, quando eu clicar na aba, em vez deu criar tudo lá dentro eu gostaria de chamar a construtora de outra classe...

Como faço isso??? Tentei algumas gambiarras (POG... rsrsrs), mas nada funciona!!!!

Segue o código:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
public class Inicio extends JFrame implements ActionListener{

	JPanel cliente = new CadCliente();
	
	Inicio(){
		setSize(800,600);
		
		JTabbedPane painel = new JTabbedPane();  
		painel.add(new JPanel(), "");  
		painel.add(new JPanel(), "");  
		
	        
	      add(painel);  
	}

	
	public void actionPerformed(ActionEvent e) {
		
	}
	
}
A classe que quero chamar...
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;


public class CadCliente extends JPanel implements ActionListener{
	
	JLabel lblLogin, lblSenha, lblBloqueio, lblNome, lblDocumento; 
	JLabel lblEndereco, lblBairro, lblCep, lblCidade, lblEstado, lblTel;
	JTextField txtLogin, txtSenha, txtNome, txtDocumento;
	JTextField txtEndereco, txtBairro, txtCep, txtCidade, txtEstado, txtTel;
	JComboBox cbBloqueio;
	JButton btCadastrar, btEditar, btDeletar, btVisualizar;
	
	CadCliente(){
		setBounds(0,0,800,600);
		getRootPane().setLayout(null);
		
		lblLogin = new JLabel("");
		lblLogin.setBounds(5,5,200,20);
		txtLogin = new JTextField();
		txtLogin.setBounds(5,30,200,20);
		getRootPane().add(lblLogin);
		getRootPane().add(txtLogin);
		
		lblSenha = new JLabel("");
		lblSenha.setBounds(215,5,200,20);
		txtSenha = new JTextField();
		txtSenha.setBounds(215,30,200,20);
		getRootPane().add(lblSenha);
		getRootPane().add(txtSenha);
		
		lblBloqueio = new JLabel("");
		lblBloqueio.setBounds(425,5,200,20);
		cbBloqueio = new JComboBox();
		cbBloqueio.setBounds(425,30,200,20);
		getRootPane().add(lblBloqueio);
		getRootPane().add(cbBloqueio);
		
		lblNome = new JLabel("");
		lblNome.setBounds(5,55,400,20);
		txtNome = new JTextField();
		txtNome.setBounds(5,30,200,20);
		getRootPane().add(lblNome);
		getRootPane().add(txtNome);
		
		lblDocumento = new JLabel("");
		lblDocumento.setBounds(215,55,200,20);
		txtDocumento = new JTextField();
		txtDocumento.setBounds(215,80,200,20);
		getRootPane().add(lblDocumento);
		getRootPane().add(txtDocumento);
		
		lblEndereco = new JLabel("");
		lblEndereco.setBounds(425,55,200,20);
		txtEndereco = new JTextField();
		txtEndereco.setBounds(425,80,200,20);
		getRootPane().add(lblEndereco);
		getRootPane().add(txtEndereco);
		
		lblBairro = new JLabel("");
		lblBairro.setBounds(5,5,200,20);
		txtBairro = new JTextField();
		txtBairro.setBounds(5,30,200,20);
		getRootPane().add(lblBairro);
		getRootPane().add(txtBairro);
		
		lblCep = new JLabel("");
		lblCep.setBounds(5,5,200,20);
		txtCep = new JTextField();
		txtCep.setBounds(5,30,200,20);
		getRootPane().add(lblCep);
		getRootPane().add(txtCep);
		
		lblCidade = new JLabel("");
		lblCidade.setBounds(5,5,200,20);
		txtCidade = new JTextField();
		txtCidade.setBounds(5,30,200,20);
		getRootPane().add(lblCidade);
		getRootPane().add(txtCidade);
		
		lblEstado = new JLabel("");
		lblEstado.setBounds(5,5,200,20);
		txtEstado = new JTextField();
		txtEstado.setBounds(5,30,200,20);
		getRootPane().add(lblEstado);
		getRootPane().add(txtEstado);
		
		lblTel = new JLabel("");
		lblTel.setBounds(5,5,200,20);
		txtTel = new JTextField();
		txtTel.setBounds(5,30,200,20);
		getRootPane().add(lblTel);
		getRootPane().add(txtTel);
	}

	
	public void actionPerformed(ActionEvent e) {
		
	}
}

1 Resposta

E

A quem interessar, consegui resolver o problema juntamente com o meu Professor.

Segue como deve ser chamado na classe principal.
JTabbedPane painel = new JTabbedPane(); 
painel.setBounds(130,0,650,400);
painel.add(new CadCliente(), "Clientes");  

//Onde """new CadCliente()""" é a construtora da classe pública que deve aparecer dentro do JPanel.
Já a classe eu vou colocar ela inteira...
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;


public class CadCliente extends JPanel implements ActionListener{
	
	JLabel lblLogin, lblSenha, lblBloqueio, lblNome, lblDocumento; 
	JLabel lblEndereco, lblBairro, lblCep, lblCidade, lblEstado, lblTel;
	JTextField txtLogin, txtSenha, txtNome, txtDocumento;
	JTextField txtEndereco, txtBairro, txtCep, txtCidade, txtEstado, txtTel;
	JComboBox cbBloqueio;
	JButton btCadastrar, btEditar, btDeletar, btVisualizar, btFechar;
	
	PesquisarCliente pesquisa = new PesquisarCliente();
	
	CadCliente(){
		setBounds(50,50,650,400);
		setLayout(null);
		
		lblLogin = new JLabel("Login");
		lblLogin.setBounds(5,5,200,20);
		lblLogin.setToolTipText("Login do cliente");
		txtLogin = new JTextField();
		txtLogin.setBounds(5,30,200,20);
		add(lblLogin);
		add(txtLogin);
		
		lblSenha = new JLabel("Senha");
		lblSenha.setBounds(215,5,200,20);
		lblSenha.setToolTipText("Senha do cliente, a mesma será gerada automaticamente.");
		txtSenha = new JTextField();
		txtSenha.setBounds(215,30,200,20);
		txtSenha.setEnabled(false);
		add(lblSenha);
		add(txtSenha);
		
		lblBloqueio = new JLabel("Bloqueio de Acesso");
		lblBloqueio.setBounds(425,5,200,20);
		lblBloqueio.setToolTipText("Determina se o Usuário está ativo ou não.");
		String[] bloqueio = {"000 - Ativado" , "001 - Bloqueado"};
		cbBloqueio = new JComboBox(bloqueio);
		cbBloqueio.setBounds(425,30,200,20);
		add(lblBloqueio);
		add(cbBloqueio);
		
		lblNome = new JLabel("Nome Completo");
		lblNome.setBounds(5,55,400,20);
		lblNome.setToolTipText("Nome completo do cliente");
		txtNome = new JTextField();
		txtNome.setBounds(5,80,400,20);
		add(lblNome);
		add(txtNome);
		
		lblDocumento = new JLabel("Documento");
		lblDocumento.setBounds(425,55,200,20);
		lblDocumento.setToolTipText("Documento do cliente");
		txtDocumento = new JTextField();
		txtDocumento.setBounds(425,80,200,20);
		add(lblDocumento);
		add(txtDocumento);
		
		lblEndereco = new JLabel("Endereço Completo");
		lblEndereco.setBounds(5,105,400,20);
		lblEndereco.setToolTipText("Endereço completo do cliente");
		txtEndereco = new JTextField();
		txtEndereco.setBounds(5,130,400,20);
		add(lblEndereco);
		add(txtEndereco);
		
		lblBairro = new JLabel("Bairro");
		lblBairro.setBounds(425,105,200,20);
		lblBairro.setToolTipText("Bairro do cliente.");
		txtBairro = new JTextField();
		txtBairro.setBounds(425,130,200,20);
		add(lblBairro);
		add(txtBairro);
		
		lblCep = new JLabel("CEP");
		lblCep.setBounds(5,155,200,20);
		lblCep.setToolTipText("CEP do cliente.");
		txtCep = new JTextField();
		txtCep.setBounds(5,180,200,20);
		add(lblCep);
		add(txtCep);
		
		lblCidade = new JLabel("Cidade");
		lblCidade.setBounds(215,155,200,20);
		lblCidade.setToolTipText("Cidade do cliente.");
		txtCidade = new JTextField();
		txtCidade.setBounds(215,180,200,20);
		add(lblCidade);
		add(txtCidade);
		
		lblEstado = new JLabel("Estado");
		lblEstado.setBounds(425,155,200,20);
		lblEstado.setToolTipText("Estado do cliente.");
		txtEstado = new JTextField();
		txtEstado.setBounds(425,180,200,20);
		add(lblEstado);
		add(txtEstado);
		
		lblTel = new JLabel("Telefone");
		lblTel.setBounds(5,205,200,20);
		lblTel.setToolTipText("Telefone de contato com o cliente.");
		txtTel = new JTextField();
		txtTel.setBounds(5,230,200,20);
		add(lblTel);
		add(txtTel);
		
		btCadastrar = new JButton("Cadastrar"); btCadastrar.addActionListener(this);
		btCadastrar.setBounds(215,270,200,20);
		add(btCadastrar);
		
		btEditar = new JButton("Editar"); btEditar.addActionListener(this);
		btEditar.setBounds(215,300,200,20);
		add(btEditar);
		
		btDeletar = new JButton("Deletar"); btDeletar.addActionListener(this);
		btDeletar.setBounds(425,270,200,20);
		add(btDeletar);
		
		btVisualizar = new JButton("Visualizar"); btVisualizar.addActionListener(this);
		btVisualizar.setBounds(425,300,200,20);
		add(btVisualizar);
		
	}

	
	public void actionPerformed(ActionEvent e) {
		if(e.getSource()==btVisualizar){
			pesquisa.setVisible(true);
		}
	}
}

Um abraço galera

Criado 21 de março de 2011
Ultima resposta 22 de mar. de 2011
Respostas 1
Participantes 1