Problema de manipulação de componentes com GridBagLayout

Boa Tarde pessoal,

antes que o pessoal mande eu procurar no search do forum, google, artigos e afins, eu ja busquei porem não achei nenhum caso parecido com o meu, e as possíveis soluções infelizmente não funcionaram, então vamos ao caso:

Na minha tela principal do sistema, tem um JTabbedPane, nele há 2 abas, na primeira eu inseri um JPanel dentro como no codigo abaixo:

//Criando as abas do sistema. JTabbedPane tabs = new JTabbedPane( JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT ); tabs.addTab("Monitoramento Dispositivos", panelDispositivosPai.getPanel()); tabs.addTab("Historico de Monitoramentos", new JPanel()); add(tabs);

até aqui tudo certo, dentro desse JPanel eu irei inserir outros JPanels “filhos” dele, para organiza-los eu setei o GridBagLayout no JPanel “Pai”, e o mesmo eu fiz com os “filhos” para organizar os componentes deles, como no codigo abaixo:

[code]package simelcom.br.view;

import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;

public class PanelDispositivo{

private GridBagLayout layoutGeral;
private GridBagConstraints constraintsGeral;

private GridBagLayout layoutDispositivo;
private GridBagConstraints constraintsDispositivo;

private JPanel panelDispositivosPai = new JPanel();
private JPanel panelDispositivoFilho;

private JLabel nomeDispositivo;
private JLabel consumoDispositivo;
private JTextField retornoConsumoDispositivo;
private JLabel custoDispositivo;
private JTextField retornoCustoDispositivo;
private JButton chaveDispositivo;	

public PanelDispositivo()
{
	layoutGeral = new GridBagLayout();
	constraintsGeral = new GridBagConstraints();
	panelDispositivosPai.setLayout(layoutGeral);
	
	constraintsGeral.fill = GridBagConstraints.BOTH;
	constraintsGeral.insets = new Insets(5,5,5,5);
	addComponent(panelDispositivosPai, constraintsGeral, layoutGeral, novoPanelDispositivo(), 1, 1, 3, 4);
}

public Component getPanel()
{
	return panelDispositivosPai;
}

public  JPanel novoPanelDispositivo()
{
	GridBagLayout layoutDispositivo = new GridBagLayout();
	GridBagConstraints constraintsDispositivo = new GridBagConstraints();
	
	panelDispositivoFilho = new JPanel();		
	panelDispositivoFilho.setLayout(layoutDispositivo);
	panelDispositivoFilho.setBackground(new Color(912911));

	constraintsDispositivo.fill = GridBagConstraints.HORIZONTAL;
	nomeDispositivo = new JLabel("NOME DISPOSITIVO", SwingConstants.CENTER);
	addComponent(panelDispositivoFilho, constraintsDispositivo, layoutDispositivo, nomeDispositivo, 1, 1, 1, 1);
	
	consumoDispositivo = new JLabel("Consumo:");
	addComponent(panelDispositivoFilho, constraintsDispositivo, layoutDispositivo, consumoDispositivo, 2, 1, 1, 1);
	/*
	retornoConsumoDispositivo = new JTextField("14" + " Kw/h");
	retornoConsumoDispositivo.setEditable(false);
	dispositivoPanel.add(retornoConsumoDispositivo);
	
	custoDispositivo = new JLabel("Custo:");
	dispositivoPanel.add(custoDispositivo);
	
	retornoCustoDispositivo = new JTextField("R$ " + "5,4");
	retornoCustoDispositivo.setEditable(false);
	dispositivoPanel.add(retornoCustoDispositivo);
	
	chaveDispositivo = new JButton("ON");
	chaveDispositivo.setBackground(new Color(1));
	dispositivoPanel.add(chaveDispositivo);*/
	
	return panelDispositivoFilho;
}

private void addComponent(JPanel panel, GridBagConstraints constraints, GridBagLayout layout, Component component, int row, int column, int width, int height)
{
	constraints.gridx = column;
	constraints.gridy = row;
	constraints.gridwidth = width;
	constraints.gridheight = height;
	layout.setConstraints( component, constraints);
	panel.add( component );
}

}
[/code]

Entao pessoal, o drama é o seguinte: eu não consigo manipular a posição do JPanel filho de jeito nenhum, tentei pelo anchor do constraints, pelo proprio panel, pelo pai, e não consegui mudar ele de lugar, eu acredita que pudesse ser o anchor pois ele fica no Centro, e como o anchor vem com CENTER como padrao, poderia ser isso, mas não consegui mexer ele.
Sou novato com relação a linguagem e o Swing, logo relevem se houverem erros bem feios xP uehuehhue!

Obrigado pela atenção pessoal!

ps.: Quem não conhecer sobre segue um link com um tutorial legal:
http://www.javafree.com.br/javabb/viewtopic.jbb?t=5792

up!

poxa tanto cara bom e nenhum para me ajudar, 2 dias ja quebrando a cabeça para arrumar isso!
estranho que cheguei a jogar esse panel dos componentes num frame separado só para ver se o problema era o panel pai, e tb não centralizou, tenho certeza que uma linha de comando resolve meu problema, mas ta dificil de acha-la :confused: