Usando Painel Tabulado

Olá Pessoal,

Em um JFrame eu inseri um Painel Tabulado. Criei vários JPanel, sendo que arastei esse pra dentro do JFrame, transformando assim cada JPanel em uma aba do painel tabulado.
No JFrame eu criei um botão “Salvar” sendo que quando eu acionar esse botão eu quero grava todas as informações de todas as abas em um banco de dados.

Alguém pode me ajudar???

Abraço.

uai, normal,

de o nome dos teus campos, depois um getText de cada campo e pronto …
tipo, todos os campos continuam na mesma classe, (memso estando em JPanels diferentes)

nao sei se é isso q vc perguntou…
abrazz

Inicialmente obrigado pelo retorno, porém nào consegui avançar, portanto vou ser mais específico.

Eu criei dois JPanel, um chamado de JP_Manter_PF_Aba1, que será a aba 1 e o JP_Manter_PF_Aba2 que será a aba2.

Eu criei um JFrame, chamado de JF_ManterPF, sendo que nesse eu inseri um Painel Tabulado e após eu arrastei para dentro desse painel tabulado um JP_Manter_PF_Aba1, que autumaticamente virou a aba 1 e o JP_Manter_PF_Aba2 que virou a aba 2.
Até aqui tudo tranquilo.

Em JF_ManterPF (JFrame), abaixo e fora do painel tabulado eu criei um botão chamado “SALVAR”. A ideia é quando pressionado esse botão jogar tudo o que esta nas abas 1 e 2 pro banco de dados, que nesse caso irá chamar um método que faz isso.

Em JP_Manter_PF_Aba1 eu criei um metódo abaixo:

public void carregaCampos() throws SQLException{
Pf pf = new Pf();
pf.setVcpf_pf(JT_CPF.getText());
pf.setVnome_pf(JT_NOME.getText());
pf.setVdta_nasc(JT_DTA_NASCIMENTO.getText());
pf.setVsexo(JT_SEXO.getText());

PfDao pfdao = new PfDao();
pfdao.adiciona(pf);

}

Na propriedade do botão “SALVAR”, em JF_ManterPF, eu criei o seguinte metodo:

private void JB_SALVARActionPerformed(java.awt.event.ActionEvent evt) {
jP_ManterPF_Aba11.carregaCampos();
}

lembrando que em JF_ManterPF o netbeans crirou automaticamente o codigo abaixo:
// Variables declaration - do not modify
private javax.swing.JButton JB_SALVAR;
private linsz.forms.JP_ManterPF_Aba1 jP_ManterPF_Aba11;
private linsz.forms.JP_ManterPF_Aba2 jP_ManterPF_Aba21;
private javax.swing.JTabbedPane jTabbedPane1;
// End of variables declaration

Quando acionado o botão “SALVAR” o sistema esta salvando somente os dados da aba 1 até por que o metodo “carregaCampos” esta puxando somente os dados da aba1, porém não sei como chamar os dados da aba2. Acredito que devo estar fazendo algo errado.

Se puderem me ajudar agradeco.






Eu acho que agora eu intendi…

Você cria classes que extendem o JPANEL e depois joga o objeto dentro do painel tabulado, é isso?
Se vc estiver instanciando isso como objetos separados, ai cada aba vc tem que criar um método.

Se vc só ta arrastando os paineis dentro da classe do JPanel, basta vc criar um método que busca os dados das duas abas…
Se a ABA1 tiver o campo com variavel: campoDaAba1,
E a ABA2 tiver o campo com variavel: campoDaAba2

basta vc fazer

private void carregarCampos(){ campoDaAba1.getText(); campoDaAba2.getText(); }

Se vc criou objetos do JPanel, vamos supor que cada objeto chama:
painel1
e
painel2

vamos supor que v
c criou o método carregarCampos() nas duas classes, então qndo clicar em salvar vc chama:

private void eventoSalvar(){
    painel1.carregarCampos();
    painel2.carregarCampos();
}

Isso por que se vc criar os dois paineis no msmo JFrame, ou seja, na msma classe, sem separar os objetos, então você terá acesso a todos esses campos, pois mesmo estando como private, vc está na mesma classe. Portanto, tem acesso.
Se for em objetos diferentes, ai vc nao tem mais esse acesso, por causa do private.

É simples assim.
Não sei se fui claro,
qqer coisa grita ae

PS: use a tag Code, qndo for colar código, pq fica mais facil de ver :wink: