Tratadores de eventos

Pessoal, o meu programa consta de duas classes a principal e uma secundaria( na qual implementei uma classe cuja finalidade é a exibição de um frame com menus). A ideia é simples a principal deverá chamar a secundaria. O frame tem um Menu com itens de menu. ao clicar no “MenuItemSistemaLogin” que é um item de menu devera ser exibida uma mensagem. Se alguem puder ajudar a entender o porque do não funcionamento deste trecho e respectivamente a corrigir o problema eu agradeceria.Abaixo eu postei os dois codigos.

primeira classe[code]
public class PrimeiroFrame{

/** Creates a new instance of PrimeiroFrame */
 
    
    private static void createAndShowGUI(){
       LayoutSistema t = new LayoutSistema(); 
       t.ExibirFrame();
    }
    
    public static void main (String args []){
        javax.swing.SwingUtilities.invokeLater(new Runnable(){
            public void run () {
              createAndShowGUI();
            
            }
                    
        });
      }

}[/code]
Segunda classe

[code]import java.awt.event.ActionListener;
import java.security.KeyStore;
import javax.swing.;
import java.awt.
;
import java.awt.event.*;
import javax.swing.JOptionPane;
/**
*

  • @author warlles
    */
    public class LayoutSistema implements ActionListener{

    // Variaveis de Instancias
    private JFrame frame;
    private JMenuBar BarraMenu ;
    private JPanel panel;
    private JMenu MenuSistema,MenuUsuario,SubMenuSistema,SubMenuUsuario;
    public JMenuItem MenuItemSistemaLogin,MenuItemSistemaConfigurarPagina,
    MenuItemSistemaImprimir, MenuItemSistemaSair;

    /** Creates a new instance of LayoutSistema */
    public LayoutSistema() {
    BarraMenu = new JMenuBar();
    panel = new JPanel();

    }

    public void ExibirFrame() {

         CriarFrame();
         CriarMenu();
         CriarItensMenu();
         FinalizarExibicao();
    

    }

    public void CriarFrame(){
       frame = new JFrame("Sistema de Controle");
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       frame.setLocation(100,100);
       frame.setJMenuBar(BarraMenu);
       
      
    
    } 
    public void CriarMenu(){
    
         MenuSistema = new JMenu("Sistema");
         MenuSistema.setMnemonic('S');
       
    
    }
    
    public void CriarItensMenu(){
    

// TratadorEventos Eventos = new TratadorEventos();

        MenuItemSistemaLogin = new JMenuItem("Login");
        MenuSistema.add(MenuItemSistemaLogin);
        MenuItemSistemaLogin.setMnemonic('l');
        MenuItemSistemaLogin.addActionListener(this);
       
        MenuSistema.addSeparator();
        
        MenuItemSistemaConfigurarPagina = new JMenuItem("Configurar Pagina");
        MenuSistema.add(MenuItemSistemaConfigurarPagina);
        MenuItemSistemaConfigurarPagina.setMnemonic('c');
        MenuSistema.addSeparator();
        
        MenuItemSistemaImprimir = new JMenuItem("Imprimir");
        MenuSistema.add(MenuItemSistemaImprimir);
        MenuItemSistemaConfigurarPagina.setMnemonic('i');
        MenuSistema.addSeparator();
        
        MenuItemSistemaSair = new JMenuItem("Sair");
        MenuItemSistemaConfigurarPagina.setMnemonic('s');
        MenuSistema.add(MenuItemSistemaSair);
       
   } 

   
   public void FinalizarExibicao(){
        BarraMenu.add(MenuSistema); 
        panel.setPreferredSize(new Dimension(600,300));
        frame.getContentPane().add(panel,BorderLayout.CENTER);
        frame.pack();
        frame.setVisible(true);  
       
   }

public void actionPerformed(ActionEvent e) {
    if (e.getSource() == MenuItemSistemaLogin){
             JOptionPane.showMessageDialog(null,null,"Ocorreu um Evento", 
                    JOptionPane.INFORMATION_MESSAGE);
          }  
          else{
              JOptionPane.showMessageDialog(null,null,"Não deu certo", 
                    JOptionPane.INFORMATION_MESSAGE);
              
          }
}

}[/code]
Obrigado pela atenção. :sad:

amigo rodei seu código aqui e não apresentou nenhum problema, quando eu rodo ele abre o frame normalmente, quando clico em login diz que ocorreu um evento …
você poderia especificar melhor qual seria o problema?

omigo omegatiger, as duas classes devem estar em arquivos separados. Colocando as duas juntas o programa funciona, mas separando não funciona.Por que?