Duvida c/ menu continua

3 respostas
E
package Siscom; 
   
import java.awt.*;
import java.awt.event.*;
import javax.swing.*; 
  
public class Siscom
    extends JFrame implements ActionListener {
    FlowLayout flowLayout1 = new FlowLayout();
   JMenuBar mainMenu = new JMenuBar();
   JMenu MCadastro = new JMenu();
   JMenuItem MCadCli = new JMenuItem();
   JMenuItem MCadFor = new JMenuItem();
   JMenu MFinanceiro = new JMenu();
   JMenuItem MLanctoContas = new JMenuItem();
   JMenuItem MBaixaTitulo = new JMenuItem();
   JMenuItem MBaixaCheques = new JMenuItem();
   JMenuItem MMovtoCaixa = new JMenuItem();
   JMenu MFolhaPagto = new JMenu();
   JMenuItem MAdiantamento = new JMenuItem();
   JMenuItem MSalario = new JMenuItem();
   JMenuItem MDecimoTerceiro = new JMenuItem();
   JMenu MEstoque = new JMenu();
   JMenuItem MCadPro = new JMenuItem();
   JMenuItem MBaixaEstoque = new JMenuItem();
   JMenuItem MEntradaEstoque = new JMenuItem();
   JMenuItem MAtualizaSaldo = new JMenuItem();
   JMenuItem MCadFun = new JMenuItem();
   JMenu MSair = new JMenu(); 
   
   public Siscom() {
     try {
       jbInit();
     }
     catch (Exception exception) {
       exception.printStackTrace();
     }
   } 
   
   private void jbInit() throws Exception {
     getContentPane().setLayout(flowLayout1);
     this.setComponentOrientation   (ComponentOrientation.LEFT_TO_RIGHT);
     this.setFont(new java.awt.Font("Arial", Font.BOLD, 10));
     this.setJMenuBar(mainMenu);
     this.setName("frmSiscom");
     this.setSize(new Dimension(450, 300));
     this.setTitle("SISCOM - Sistema de gestão comercial");
     this.setVisible(true);
     MCadastro.setText("Cadastro");
     MCadCli.setText("Cadastro de clientes");
     MCadFor.setText("Cadastro de fornecedores");
     MFinanceiro.setText("Financeiro");
     MLanctoContas.setText("Lançamento de contas");
     MBaixaTitulo.setText("Baixa de títulos");
     MBaixaCheques.setText("Baixa de cheques");
     MMovtoCaixa.setText("Movimento de caixa");
     MFolhaPagto.setText("Folha de pagamento");
     MAdiantamento.setText("Adiantamentos");
     MSalario.setText("Pagamento de salários");
     MDecimoTerceiro.setText("Pagamento de 13º salário");
     MEstoque.setText("Estoque");
     MCadPro.setText("Cadastro de produtos");
     MBaixaEstoque.setText("Baixa de produtos");
     MEntradaEstoque.setText("Entrada de produtos");
     MAtualizaSaldo.setText("Atualização de saldo");
     MCadFun.setText("Cadastro de funcionários");
     MSair.setText("Sair");
     mainMenu.add(MCadastro);
     mainMenu.add(MFinanceiro);
     mainMenu.add(MEstoque);
     mainMenu.add(MSair); 
   
     MCadastro.add(MCadCli);
     MCadastro.add(MCadFor);
     MCadastro.addSeparator();
     MCadastro.add(MCadFun);
     MFinanceiro.add(MLanctoContas);
     MFinanceiro.addSeparator();
     MFinanceiro.add(MFolhaPagto);
     MFolhaPagto.add(MAdiantamento);
     MFolhaPagto.add(MSalario);
     MFolhaPagto.addSeparator();
     MFolhaPagto.add(MDecimoTerceiro);
     MEstoque.add(MCadPro);
     MEstoque.add(MBaixaEstoque);
     MEstoque.add(MEntradaEstoque);
     MEstoque.add(MAtualizaSaldo);
     MFinanceiro.add(MBaixaTitulo);
     MFinanceiro.add(MBaixaCheques);
     MFinanceiro.addSeparator();
     MFinanceiro.add(MMovtoCaixa);
     MFinanceiro.addSeparator(); 
   
     //Escutando evento 
     MSair.addActionListener(this);
     MCadCli.addActionListener(this); 
   
   } 
   
   public static void main(String[] args) {
     Siscom siscom = new Siscom();
   } 
   
   /**
    * Invoked when an action occurs.
    *
    * @param e ActionEvent
    * @todo Implement this java.awt.event.ActionListener method
    */
   public void actionPerformed(ActionEvent e) {
     if (e.getSource().equals(MSair)) {
       System.exit(0);
     } 
    if (e.getSource().equals(MCadCli)) {
       System.out.println("Teste");
 
   }
 }
  
A questão é a seguinte: Como eu faço pra que quando eu clicar no menu SAIR, 
o Formulário seja fechado.  conseguo fazer se eu colocar um item(Fechar)
dentro do menu Sair e eu não quero isso. 
   
Alguém ajuda ? 
  
JBuilder 2005 + Java 5.0

3 Respostas

C

Ola… pelo q entendi vc quer fechar o formulario e nao o programa ne??

usa o metodo
dispose();

mas c vc quizer fechar o programa usa
System.exit(0);

espero ter ajudado!

E

Olá;

Isso mesmo quando eu clicar no menu Sair quero que a aplicação seja fechada. Já usei o exit(0) como você indica mas não funcionou. Só funciona se eu colocar um item dentro do menu.

Ex.

Cadastro Sair

Assim não funcionou quando clico no Sair.

Ex.

Cadastro Sair
… Fechar

Assim funciona quando clico no Fechar.

Valeu.

C

Dentro do seu JMenuItem sair vc tem q colocar o evento par ele!

seuJMenuItem.addActionListener( new ActionListener() { public void actionPerformet( ActionEvent e ) { System.exit( 0 ); } } );

Assim funciona!!

Criado 4 de março de 2005
Ultima resposta 7 de mar. de 2005
Respostas 3
Participantes 2