R04_V.java_



import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class Ventana extends JFrame
{
	JMenu MenuArchivo, MenuProg, MenuAyuda;
	JMenuItem Archivo_Nuevo, Archivo_Salir, Prog_Trafico, Prog_Razona, Ayuda_Eins, Ayuda;
	Trafico TRAFICO;
	Razona RAZONA;
	
	public Ventana ()
	{
		this.getContentPane().setLayout(null);	// Contenedor nulo
		this.setTitle("Tópicos de la animación");	// Titulo de la ventana
		this.setResizable(false);			// No es redimensionable
		this.setLocation(100, 100);			// Posicion
		this.setSize(new Dimension(600, 450));	// Dimensiones
		this.toFront();

		JMenuBar BarraMenu = new JMenuBar();		// Barra de menU
		
			MenuArchivo = InsertaMenu("Archivo");
				MenuArchivo.setMnemonic(KeyEvent.VK_A);		// Se accesa con Alt-A
				InsertaItem(MenuArchivo, Archivo_Nuevo, "Nuevo", KeyEvent.VK_N);	// Se accesa con Alt-N
				InsertaItem(MenuArchivo, Archivo_Salir, "Salir", KeyEvent.VK_S);	// Se accesa con Alt-S
			MenuProg = InsertaMenu("Programa");
				MenuProg.setMnemonic(KeyEvent.VK_P);		// Se accesa con Alt-P
				InsertaItem(MenuProg, Prog_Trafico, "Trafico", KeyEvent.VK_T);		// Se accesa con Alt-T
				InsertaItem(MenuProg, Prog_Razona, "Razonamiento", KeyEvent.VK_R);	// Se accesa con Alt-R
			MenuAyuda = InsertaMenu("Ayuda");
				MenuAyuda.setMnemonic(KeyEvent.VK_Y);		// Se accesa con Alt-Y
				Ayuda_Eins = new JMenuItem("Einstein", new ImageIcon("Einstein_17.jpg"));
				Ayuda_Eins.setMnemonic(KeyEvent.VK_E);					// Se accesa con Alt-E
				MenuAyuda.add(Ayuda_Eins);
				Ayuda_Eins.addActionListener(new Evento_Opciones());
				InsertaItem(MenuAyuda, Ayuda, "Acerca de", KeyEvent.VK_A);	// Se accesa con Alt-A
			BarraMenu.add(MenuArchivo);
			BarraMenu.add(MenuProg);
			BarraMenu.add(MenuAyuda);
		setJMenuBar(BarraMenu);

		TRAFICO = new Trafico();
		this.getContentPane().add(TRAFICO);
		TRAFICO.setBounds(10, 50, 570, 310);
		TRAFICO.setVisible(false);
		
		RAZONA = new Razona();
		this.getContentPane().add(RAZONA);
		RAZONA.setBounds(10, 50, 570, 310);
		RAZONA.setVisible(false);
		this.show();
	}

	JMenu InsertaMenu(String CAD) { return new JMenu(CAD); }

	void InsertaItem(JMenu MENU, JMenuItem ITEM, String CAD, int KEY_EVENT)
	{
		ITEM = new JMenuItem(CAD);
		ITEM.setMnemonic(KEY_EVENT);
		MENU.add(ITEM);
		ITEM.addActionListener(new Evento_Opciones());
	}

	public static void main(String R[]) { new Ventana(); }

	protected void processWindowEvent(WindowEvent e)
	{ if (e.getID() == WindowEvent.WINDOW_CLOSING) System.exit(0); }

	class Evento_Opciones implements ActionListener
	{
		public void actionPerformed(ActionEvent e)
		{
			if (e.getActionCommand().equals("Salir")) System.exit(0);
			if (e.getActionCommand().equals("Nuevo"))
			{
				TRAFICO.setVisible(false);
				TRAFICO.ALTO();
				RAZONA.setVisible(false);
				RAZONA.ALTO();
			}
			if (e.getActionCommand().equals("Trafico"))	TRAFICO.setVisible(true);
			if (e.getActionCommand().equals("Razonamiento")) RAZONA.setVisible(true);
			if (e.getActionCommand().equals("Acerca de"))
				JOptionPane.showMessageDialog(null,
				JOptionPane.INFORMATION_MESSAGE);
			if (e.getActionCommand().equals("Einstein"))
				JOptionPane.showMessageDialog(null,
				"http://www.alberteinstein.info/", "Einstein",
				JOptionPane.INFORMATION_MESSAGE);
		}
	}
}