Problemas e adicionar JTable ao Panel [URGENTE! - Ninguem pode Ajudar?!]

Pessoal,

Estou com um grande problema, pois tentei de diversas formas e não estou conseguindo adicionar o meu JTable ao Panel.

Segue abaixo a Classe onde eu instancio o JTable:

package Clientes;



import java.awt.Font;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.text.ParseException;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
import javax.swing.text.MaskFormatter;

import ConectaBanco.ConnectionDataBase;




public class AddFrameCliente 
{
	
	//Construtor do modelo da JTable
	public DefaultTableModel ClienteCadastrado(ResultSet rs)
	{
		DefaultTableModel modelo = new DefaultTableModel();
		
		try
		{
			ResultSetMetaData rsmd = rs.getMetaData();
			
			for(int i = 1; i<=rsmd.getColumnCount(); i++)
			{
				modelo.addColumn(rsmd.getColumnLabel(i));
			}
			
			while(rs.next())
			{
				Vector<String> dados = new Vector<String>();
				
				for(int i = 1; i<=rsmd.getColumnCount(); i++)
				{
					dados.addElement(rs.getString(i));
				}
				
				modelo.addRow(dados);
			}
		}
		catch(Exception ex)
		{
			System.out.println(ex.toString());
		}
		
		return modelo;
	}
	
	public AddFrameCliente(JPanel PanelCliente)
	{
		
		//Declaração da JTable
		JTable TblClientesCadastrados = null;

		try
		{
			Connection conn = ConnectionDataBase.getConnection();
			
			Statement comando = conn.createStatement();
			
			ResultSet linhas = comando.executeQuery("Select * from clientes");
			
			TblClientesCadastrados = new JTable(ClienteCadastrado(linhas));
			TblClientesCadastrados.setBounds(10, 200, 400, 200);
			TblClientesCadastrados.setVisible(true);
		}
		catch(Exception ex)
		{
			System.out.println(ex.toString());
		}
		
		
		
	  
		//Declaração dos Labels
			JLabel LblBannerCliente = new JLabel("Cadastro de CLientes");
			LblBannerCliente.setFont(new java.awt.Font("Curlz MT",3,28));
			LblBannerCliente.setBounds(250,5, 300, 30);
			
			JLabel LblBannerClienteCadastrado = new JLabel("Clientes Cadastrados");
			LblBannerClienteCadastrado.setFont(new Font("Curlz MT",3,28));
			LblBannerClienteCadastrado.setBounds(250, 180, 300, 30);
			
			JLabel LblCodigoCliente = new JLabel("Cod.");
			LblCodigoCliente.setBounds(10, 50, 40, 32);
			
			JLabel LblNomeCliente = new JLabel("Nome:");
			LblNomeCliente.setBounds(150, 50, 60, 32);
			
			JLabel LblSobreNomeCliente = new JLabel("Sobrenome:");
			LblSobreNomeCliente.setBounds(430, 50, 80, 32);
		
			JLabel LblNiverCliente = new JLabel("Aniversario:");
			LblNiverCliente.setBounds(10, 85, 80, 32);
			
			JLabel LblTelCliente = new JLabel("Tel:");
			LblTelCliente.setBounds(180, 85, 40, 32);
			
			JLabel LblEmailCliente = new JLabel("Email:");
			LblEmailCliente.setBounds(430, 85, 40, 32);
			
		//Declaração dos TextFields
			JTextField TxtFieldCodCliente = new JTextField();
			TxtFieldCodCliente.setBounds(40,50,60,25);
			TxtFieldCodCliente.setEnabled(false);
			
			JTextField TxtFieldNomeCliente = new JTextField();
			TxtFieldNomeCliente.setBounds(190, 50, 200, 25);
			
			JTextField TxtFieldSobreNomeCLiente = new JTextField();
			TxtFieldSobreNomeCLiente.setBounds(505, 50, 250, 25);
			
			JTextField TxtFieldEmailCliente = new JTextField();
			TxtFieldEmailCliente.setBounds(480, 85, 275, 25);
			
		//Declaração dos Buttons
			JButton ButtonCadastrarCliente = new JButton("Cadastrar");
			ButtonCadastrarCliente.setBounds(230, 125, 115, 35);
			
			JButton ButtonLimparDadosCLiente = new JButton("Limpar");
			ButtonLimparDadosCLiente.setBounds(400, 125, 115, 35);
			
						
		//Declaração dos JFormattedFields	
			JFormattedTextField FTextFieldNivercliente = new JFormattedTextField();
			FTextFieldNivercliente.setBounds(87, 85, 70, 25);
			
				try 
				{
					MaskFormatter NiverCLiente = new MaskFormatter("##/##");
					NiverCLiente.install(FTextFieldNivercliente);
				} 
				catch (ParseException e) 
				{
				
					e.printStackTrace();
				}
			
			JFormattedTextField FTextFieldTelCliente = new JFormattedTextField();
			FTextFieldTelCliente.setBounds(210, 85, 180, 25);
			
				try 
				{
					MaskFormatter NiverCLiente = new MaskFormatter("(##)####-####");
					NiverCLiente.install(FTextFieldTelCliente);
				} 
				catch (ParseException e) 
				{
				
					e.printStackTrace();
				}			

		//Adiciona o layout ao panelprincipal
			PanelCliente.setLayout(null);
				
		//Adiciona os labels ao PanelPrincipal	
			PanelCliente.add(LblBannerCliente);
			PanelCliente.add(LblCodigoCliente);
			PanelCliente.add(LblNomeCliente);
			PanelCliente.add(LblSobreNomeCliente);
			PanelCliente.add(LblNiverCliente);
			PanelCliente.add(LblTelCliente);
			PanelCliente.add(LblEmailCliente);
			PanelCliente.add(LblBannerClienteCadastrado);
				
		//Adiciona os textfields ao panelPrincipal
			PanelCliente.add(TxtFieldCodCliente);
			PanelCliente.add(TxtFieldNomeCliente);
			PanelCliente.add(TxtFieldSobreNomeCLiente);
			PanelCliente.add(TxtFieldEmailCliente);
			

				
		//Adiciona os JFormattedField
			PanelCliente.add(FTextFieldNivercliente);
			PanelCliente.add(FTextFieldTelCliente);
			
		//Adiciona os JButtons
			PanelCliente.add(ButtonCadastrarCliente);
			PanelCliente.add(ButtonLimparDadosCLiente);
			
		//Adiciona a JTable ao PanelPrincipal
			PanelCliente.add(new JScrollPane(TblClientesCadastrados));

	}

}

A classe abaixo é onde eu chamo o construtor que adiciona os objetos ao Panel Principal.

package Principal;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.KeyStroke;

import Balanco.AddFrameBalanco;
import Clientes.AddFrameCliente;
import Email.FrameEmail;
import Entregas.AddFrameEntregas;
import FluxoCaixa.AddFrameFluxoCaixa;
import Fornecedor.AddFrameFornecedor;
import Produtos.AddFrameProdutos;
import Vendas.AddFrameVendas;

/*
 * Classe FramePrincipal:
 * Monta o Frame Principal 
 * da aplicação
 */

@SuppressWarnings("serial")

public class FramePrincipal extends JFrame
{
	//Declaração do JTabbedPane
	JTabbedPane jtpPrincipal = new JTabbedPane();
	
	//Cada Panel Representa uma aba.
	JPanel PanelVendas = new JPanel();
	JPanel PanelCliente = new JPanel();
	JPanel PanelProduto = new JPanel();
	JPanel PanelEntrega = new JPanel();
	JPanel PanelFornecedor = new JPanel();
	JPanel PanelBalanco = new JPanel();
	JPanel PanelFluxoCaixa = new JPanel();
	
	//Declaração da barra do Menu
		JMenuBar BarraMenu = new JMenuBar();
		
	//Declaração do menu
		JMenu MenuOpcoes = new JMenu("Arquivo");
		JMenu MenuSobre = new JMenu("Ajuda");
	
	//Declaração dos Itens do Menu Arquivo
		JMenuItem JMIemail = new JMenuItem("Mandar E-mail");
		JMenuItem JMIBalanco = new JMenuItem("Imprimir Balanços");
		JMenuItem JMIsair = new JMenuItem("Sair");
		
	//Declaração dos itens do Menu Ajuda.
		JMenuItem JMIsobre = new JMenuItem("Sobre..");
		
	public FramePrincipal()
	{
		super("Innova Flores");
		setSize(800, 600);
		setLocation(100,100);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		//Configurações de Propriedades dos menus
			MenuOpcoes.setMnemonic('o');
			MenuSobre.setMnemonic('a');
			
			JMIBalanco.setMnemonic('b');
			JMIemail.setMnemonic('e');
			JMIsair.setMnemonic('s');
			JMIsobre.setMnemonic('h');
		
		//Tecla de atalho do SubMenu Sair
			JMIsair.setAccelerator(KeyStroke.getKeyStroke
								  (KeyEvent.VK_F4, KeyEvent.ALT_MASK));

		//Tecla de atalho do SubMenu Email
			JMIemail.setAccelerator(KeyStroke.getKeyStroke
								  (KeyEvent.VK_F3, KeyEvent.ALT_MASK));
			
			
		//Adicionar os itens no menu Arquivo
			MenuOpcoes.add(JMIBalanco);
			MenuOpcoes.add(JMIemail);
			MenuOpcoes.add(JMIsair);
		
		//Adicionar os itens no menu Sobre	
			MenuSobre.add(JMIsobre);
		
		//Adiciona o menu arquivo a barra	
			BarraMenu.add(MenuOpcoes);
		
		//Adiciona o menu sobre a barra	
			BarraMenu.add(MenuSobre);
			
		//Adiciona a barra na Janela
			setJMenuBar(BarraMenu);

		//Adiciona evento ao Menu Email
			JMIemail.addActionListener
			(new ActionListener()
				{
					public void actionPerformed
					(ActionEvent SMEmail)
					{
						new FrameEmail();
					}
				});			
		//Adiciona evento ao Menu Sair
			JMIsair.addActionListener
			(new ActionListener()
				{
					public void actionPerformed
					(ActionEvent SMSair)
					{
						dispose();
					}
				});
			
		//Adiciona conteudo ao panel vendas
			new AddFrameVendas(PanelVendas);
				
		//Adiciona conteudo ao Panel Produtos
			new AddFrameProdutos(PanelProduto);
		
		//Adiciona conteudo ao Panel Entregas
			new AddFrameEntregas(PanelEntrega);
		
		 //Adiciona conteudo ao Panel Cliente
			new AddFrameCliente(PanelCliente);
		
		//Adiciona conteudo ao Panel Balanco
			new AddFrameBalanco(PanelBalanco);
			
		//Adiciona conteudo ao Panel Fornecedor
			new AddFrameFornecedor(PanelFornecedor);
			
		// Adiciona conteudo ao Panel FluxoCaixa
			new AddFrameFluxoCaixa(PanelFluxoCaixa);
		
		//adiciona os panels como aba
			jtpPrincipal.addTab("Vendas",null,PanelVendas, "Modulo de vendas");
			jtpPrincipal.addTab("Clientes",null,PanelCliente, "Modulo de clientes");
			jtpPrincipal.addTab("Produtos",null,PanelProduto, "Modulo de produtos");
			jtpPrincipal.addTab("Entregas",null,PanelEntrega, "Modulo de entregas");
			jtpPrincipal.addTab("Fornecedor",null,PanelFornecedor, "Modulo de fornecedores");
			jtpPrincipal.addTab("Balanço",null,PanelBalanco, "Modulo de balanço mensal, semanal e diario");
			jtpPrincipal.addTab("Fluxo de caixa",null,PanelFluxoCaixa, "Modulo de fluxo de caixa");
			
			
		//Adiciona conteudo ao Frame
			this.getContentPane().add(jtpPrincipal);
				
			setVisible(true);
	}

}

Gostaria de saber o que eu estou fazendo de errado, pois não consigo visualizar o JTable no meu Panel.

Rodei em modo de debug e ele constroi a aplicação sem nenhum erro, simplesmente não aparece no meu Panel.

Alguem Poderia me Ajudar!!!

Pessoal,

Cade a ajuda e cooperação dos membros do guj?!!

Alguem pode me ajudar?!!

De outra vez recomendaria que você postasse código mais curto e conciso, já que por mais simples que seja a dúvida, digerir uma listagem do tamanho que você enviou intimida qualquer um. Mas de qualquer forma, repare na linha abaixo:

Você não especificou em momento nenhum o tamanho e a posição deste JScrollPane, suponho que é por isso que sua JTable não aparece.

Valeu roger_rf!!!

Postei o codigo completo para melhor entendimento do Pessoal, mas não sabia que isso intimidava, mas blz da proxima vez não posto todo o codigo e coloco somente a parte que interessa.

Mas como eu seto o tamanho do JScrollPane?!!

O JScrollPane é um componente como outro qualquer, então pode usar setBounds() :

JScrollPane scroll = new JScrollPane(TblClientesCadastrados); PanelCliente.add(scroll); scroll.setBounds(10, 10, 100, 100);

Roger_rf,

Cara show de bola esta aparecendo agora!!!

Meu super simples, porem como eu não sabia estava dando muita dor de cabeça!!!

Valeu pela ajuda, pois até o momento foi a unica pessoa que parou para ajudar!!!

Obrigado!!!