Exiting a program when the user selects "Exit" from the "File" menu.

Hello.

I would like to exit the program when the user selects "Exit" from the "File" menu. How do I do that in java? What should I add to the program? Thank you.

Here is my program:

--

/**

*

Title: EIRC - Efienamokwu's Internet Relay Chat

*

Description: An Internet Relay Chat client

*

Copyright: Copyright (c) 2004

*

Company: Ernest O. Efienamokwu Jr.

* @author Ernest O. Efienamokwu Jr.

* @version 1.0

*/

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class eirc extends Frame {

private Label author = new Label();

private Label copyright1 = new Label();

private Label copyright2 = new Label();

private Button ContinueButton = new Button();

public static void main(String args[]){

new eirc().show();

}

public eirc() {

super("EIRC - Efienamokwu's Internet Relay Chat 1.0.");

setBounds(150,150, 450, 150);

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

setVisible(false);

dispose();

System.exit(0);

}

}); // end addWindowListener()

try {

jbInit();

}

catch(Exception e) {

e.printStackTrace();

}

}

private void jbInit() throws Exception {

author.setFont(new java.awt.Font("Dialog", 1, 14));

author.setText("Developed by Ernest O. Efienamokwu Keshi Jr.");

copyright1.setFont(new java.awt.Font("Dialog", 1, 14));

copyright1.setText("Copyright (C) 2004, Ernest O. Efienamokwu Keshi Jr.");

copyright2.setFont(new java.awt.Font("Dialog", 1, 14));

copyright2.setText("All Rights Reserved.");

ContinueButton.setLabel("Continue");

ContinueButton.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(ActionEvent e) {

ContinueButton_actionPerformed(e);

}

});

this.add(author, BorderLayout.NORTH);

this.add(copyright1, BorderLayout.WEST);

this.add(copyright2, BorderLayout.CENTER);

this.add(ContinueButton, BorderLayout.SOUTH);

}

void ContinueButton_actionPerformed(ActionEvent e) {

author.setVisible(false);

copyright1.setVisible(false);

copyright2.setVisible(false);

ContinueButton.setVisible(false);

// Create menus

MenuBar mb = new MenuBar();

Menu fileMenu = new Menu("File");

fileMenu.add(new MenuItem("Recent Servers"));

fileMenu.addSeparator();

fileMenu.add(new MenuItem("Connect"));

fileMenu.add(new MenuItem("Disconnect"));

fileMenu.addSeparator();

fileMenu.add(new MenuItem("Select Server... Alt+E "));

fileMenu.addSeparator();

fileMenu.add(new MenuItem("Exit"));

mb.add(fileMenu);

Menu viewMenu = new Menu("View");

viewMenu.add(new MenuItem("Menubar"));

viewMenu.add(new MenuItem("Toolbar"));

viewMenu.add(new MenuItem("Switchbar"));

viewMenu.addSeparator();

viewMenu.add(new MenuItem("Favorites"));

viewMenu.addSeparator();

viewMenu.add(new MenuItem("Options"));

viewMenu.addSeparator();

viewMenu.add(new MenuItem("Notify List... Alt+N"));

viewMenu.add(new MenuItem("URL List... Alt+U"));

viewMenu.addSeparator();

viewMenu.add(new MenuItem("Colors... Alt+K"));

viewMenu.add(new MenuItem("Fonts..."));

mb.add(viewMenu);

Menu favoritesMenu = new Menu("Favorites");

favoritesMenu.add(new MenuItem("Recent Channels"));

favoritesMenu.addSeparator();

favoritesMenu.add(new MenuItem("Add to Favorites"));

favoritesMenu.addSeparator();

favoritesMenu.add(new MenuItem("More..."));

mb.add(favoritesMenu);

Menu toolsMenu = new Menu("Tools");

toolsMenu.add(new MenuItem("Channels List... Alt+L"));

toolsMenu.addSeparator();

toolsMenu.add(new MenuItem("Scripts Editor... Alt+R"));

toolsMenu.addSeparator();

toolsMenu.add(new MenuItem("Send File... Alt+S"));

toolsMenu.add(new MenuItem("Chat... Alt+C"));

toolsMenu.addSeparator();

toolsMenu.add(new MenuItem("Receive Files..."));

toolsMenu.add(new MenuItem("Log Files..."));

toolsMenu.addSeparator();

toolsMenu.add(new MenuItem("Address Book... Alt+B"));

toolsMenu.add(new MenuItem("Online Timer... Alt+I"));

toolsMenu.add(new MenuItem("Finger... Alt+G"));

toolsMenu.addSeparator();

toolsMenu.add(new MenuItem("Options... Alt+O"));

mb.add(toolsMenu);

Menu commandsMenu = new Menu("Commands");

commandsMenu.add(new MenuItem("Join Channel"));

commandsMenu.add(new MenuItem("Part Channel"));

commandsMenu.add(new MenuItem("Query User"));

commandsMenu.add(new MenuItem("Send notice"));

commandsMenu.add(new MenuItem("Whois User"));

commandsMenu.add(new MenuItem("Send CTCP"));

commandsMenu.addSeparator();

commandsMenu.add(new MenuItem("Set Away"));

commandsMenu.add(new MenuItem("Invite User"));

commandsMenu.add(new MenuItem("Ban user"));

commandsMenu.add(new MenuItem("Kick user"));

commandsMenu.add(new MenuItem("Ignore user"));

commandsMenu.add(new MenuItem("Unignore user"));

commandsMenu.add(new MenuItem("Change nick"));

commandsMenu.add(new MenuItem("Quit IRC"));

mb.add(commandsMenu);

Menu windowMenu = new Menu("Window");

windowMenu.add(new MenuItem("Tile"));

windowMenu.add(new MenuItem("Cascade"));

windowMenu.addSeparator();

windowMenu.add(new MenuItem("Options..."));

windowMenu.add(new MenuItem("Close"));

mb.add(windowMenu);

Menu helpMenu = new Menu("Help");

helpMenu.add(new MenuItem("Contents... F1"));

helpMenu.add(new MenuItem("Search... Shift+F1"));

helpMenu.addSeparator();

helpMenu.add(new MenuItem("Latest News..."));

helpMenu.add(new MenuItem("Message Board..."));

helpMenu.addSeparator();

helpMenu.add(new MenuItem("Help Files"));

helpMenu.add(new MenuItem("Text Files"));

helpMenu.addSeparator();

helpMenu.add(new MenuItem("About EIRC"));

mb.add(helpMenu);

setMenuBar(mb);

} // end eirc() constructor

} // end class

[6331 byte] By [Ernest_Ea] at [2007-10-1 2:25:31]
# 1
You can add actionListeners to your menuItems.
JTerjea at 2007-7-8 11:33:42 > top of Java-index,Java Essentials,Java Programming...