Boa tarde a todos.
Estou começando a criar uma TELA PRINCIPAL , a qual é responsável por ter o MENU DE OPÇÕES. Através desta tela eu chamo as outras, conforme o código abaixo:
package gui;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
public class MenuExemplo3 extends JFrame {
private JMenuItem sair;
private JMenuItem cliente, fornecedor, produto;
private JMenuItem ajuda, info;
private JMenu sistema, cadastro, sobre;
private JMenuBar menuBar;
public MenuExemplo3(){
setSize(400, 400);
setLocation(300, 200);
//título da janela
setTitle("Sistema Comercial");
//construindo os objetos;
sair = new JMenuItem("Sair");
cliente = new JMenuItem("Cliente");
fornecedor = new JMenuItem("Fornecedor");
produto = new JMenuItem("Produto");
ajuda = new JMenuItem("Ajuda");
info = new JMenuItem("Info");
sistema = new JMenu("Sistema");
cadastro = new JMenu("cadastro");
sobre = new JMenu("Sobre");
//construindo o menu sistema
sistema.add(sair);
//construindo o menu cadastro
cadastro.add(cliente);
cadastro.add(fornecedor);
cadastro.add(produto);
//construindo o menu sobre
sobre.add(ajuda);
sobre.add(info);
//construindo o menu
menuBar = new JMenuBar();
menuBar.add(sistema);
menuBar.add(cadastro);
menuBar.add(sobre);
setJMenuBar(menuBar);
//chama o método para definir os eventos.
definirEventos();
setVisible(true);
}
//define os eventos
private void definirEventos(){
//evento submenu sair
sair.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
System.exit(0);
}
});
//evento submenu cliente
cliente.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
//instanciando tela cliente
Cliente janelacli = new Cliente();
janelacli.setVisible(true);
}
});
//evento submenu sobre
info.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
JOptionPane.showMessageDialog(null, "Sistema Comercial 1.0", "Informação",JOptionPane.INFORMATION_MESSAGE);
}
});
}
public static void main(String[] args){
new MenuExemplo3();
}
}
package gui;
import javax.swing.JFrame;
public class Cliente extends JFrame{
//metodo construtor
public Cliente(){
//definindo o tamanho da janela
setSize(400, 300);
//título da janela
setTitle("Cadastro de Clientes");
//evento para fechar a janela
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//tornando a janela visivel
setVisible(true);
}
}
O problema que tenho aqui é o seguinte. Ao clicar no Menu Cadastro->Cliente, a Tela para cadastrar Cliente é mostrada, porém quando clico no Botão de Fechar da tela de cliente a TELA PRINCIPAL fecha também. Sendo assim, o que devo fazer para que quando eu clicar no Botão de Fechar da Tela de Cliente fechar apenas ela?
Obrigado.