Ajuda como setar "Visivel" uma jPanel de um jFrame a partir de outra classe (jInternalFrame)

2 respostas
TiagoJavaa

Olá, comecei a estudar java a pouco tempo e sei mais o básico por enquanto.
Fiz um sistema que inseri, exclui, consulta e edita informações do banco de dados mysql.

Mas o problema é que quando abro uma janela jInternalFrame a partir da “barra de menu > Item do menu” ela “buga”, apaga, a tela principal que fica por baixo, desta maneira:

Ai pensei quando abrir a janela jInternalFrame setar invisível os dois jPanel, um que contem a parte de consulta e outro que contem a parte de excluir usuário conforme a imagem acima , mas depois não consigo setar Visível de novo quando fecho a janela jInternalFrame a partir de um botão “Sair”, pois fala que o jPanel1 não é publico.

É possivel tornar os jPanel publicos? para mim setar eles visivel de outra classe(jInternalframe)?

Agradeço por qualquer ajuda !

2 Respostas

C

Olá Tiago,
Poderia postar um trecho do seu código? Como você está chamando esta JInternalFrame?
E outra pergunta, qual editor você está usando para programar?

TiagoJavaa

Estou usando o NetBeans 8.1.
O código para chamar a jInternalFrame é o seguinte

private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {

// ITEM DO MENU >> CADASTRAR CLIENTES

Cadastrar cadastrar = new Cadastrar(); // instanciar a classe Cadastrar (jInternalFrame)

jDesktopPane1.add(cadastrar);

cadastrar.setVisible(true);

jPanel1.setVisible(false); // setando o jPanel1 Invisivel

jPanel2.setVisible(false); // setando o jPanel2 Invisivel

}

Ai na outra classe (jInternalFrame “Cadastrar”) quando apertar o botão “SAIR” quero deixar os jPanel1 e jPanel2 visível novamente. Ja tentei criar um método na classe principal e chamar ele na outra classe, mas nao funciona.

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {
// BOTAO SAIR
// QUERIA COLOCAR AQUI ALGUM JEITO DE SETAR VISIVEL NOVAMENTE o jPanel1 e 2
dispose(); // chamando o método que fecha somente a jInternalFrame

}
Criado 10 de janeiro de 2017
Ultima resposta 11 de jan. de 2017
Respostas 2
Participantes 2