Boa Tarde , gostaria de saber como eu faço para impedir que seja aberta mais de um internal frame ao mesmo tempo ou seja caso se clicado em um menu , Adicionar Cliente , que informe uma mensagem perguntando ao usuario se ele deseja sair do menu adicionar cliente , entrar no item remover cliente do menu .
import javax.swing.JFrame;
import javax.swing.JMenuItem;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import java.awt.event.<em>;
import javax.swing.</em>;
import java.awt.*;
public class Tela extends JFrame {
private JDesktopPane desktoppane = new JDesktopPane();
public Tela() {
super(" PROGRAMA TESTE ");
inicializa();
setExtendedState(MAXIMIZED_BOTH);
show();
}
private void inicializa() {
// cria a barra de menu
JMenuBar menuBar = new JMenuBar();
// cria o menu na barra
JMenu menu1 = new JMenu("Janelas");
// cria o item de menu
JMenuItem menuItem1 = new JMenuItem("Inserir");
// adiciona o evento para clique no menu "INSERIR"
menuItem1.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
// Cria um novo InternalFrame
JInternalFrame frame = new JInternalFrame("Janela ");
// e adiciona no desktop
desktoppane.add(frame);
// tamanho...
frame.setSize(200,200);
// se pode ser fechado (X)...
frame.setClosable(true);
frame.setMaximizable(true);
frame.setIconifiable(true);
frame.setResizable(true);
// mostra
frame.show();
}
});
//adiciona o item de menu no menu
menu1.add(menuItem1);
// e o menu na barra de menu
menuBar.add(menu1);
// adiciona menu na janela principal
setJMenuBar(menuBar);
// Adiciona o desktoppane
getContentPane().add(desktoppane, BorderLayout.CENTER);
/* Menu Cadastro */
// cria o menu na barra
JMenu menuCad = new JMenu("Cadastro");
// cria o item de menu
JMenuItem cadAd = new JMenuItem("Adicionar Cliente");
// adiciona o evento para clique no menu "Adicionar Cliente"
cadAd.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
// Cria um novo InternalFrame
JInternalFrame frame = new JInternalFrame("Cadastro de Cliente ");
// e adiciona no desktop
desktoppane.add(frame);
// tamanho...
frame.setSize(200,200);
// se pode ser fechado (X)...
frame.setClosable(true);
frame.setMaximizable(true);
frame.setIconifiable(true);
frame.setResizable(true);
// mostra
frame.show();
}
});
// cria o item de menu
JMenuItem cadRem = new JMenuItem("Remover Cliente");
// adiciona o evento para clique no menu "Adicionar Cliente"
cadRem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
// Cria um novo InternalFrame
JInternalFrame frame = new JInternalFrame("Remover Cadastro do Cliente ");
// e adiciona no desktop
desktoppane.add(frame);
// tamanho...
frame.setSize(200,200);
// se pode ser fechado (X)...
frame.setClosable(true);
frame.setMaximizable(true);
frame.setIconifiable(true);
frame.setResizable(true);
// mostra
frame.show();
}
});
//adiciona o item de menu no menu
menuCad.add(cadAd);
//adiciona o item de menu no menu
menuCad.add(cadRem);
// e o menu na barra de menu
menuBar.add(menuCad);
// adiciona menu na janela principal
setJMenuBar(menuBar);
// Adiciona o desktoppane
getContentPane().add(desktoppane, BorderLayout.CENTER);
}
public static void main(String args[]) {
new Tela().show();
}
}
[color=“white”][/color][color=“darkblue”][/color]
