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

