import java.awt.*; import java.awt.event.*; import javax.swing.JMenu; import javax.swing.*; public class MenuBar extends JMenuBar { private OpenListener oListener; private SaveListenerNew sListenerNew; private SaveListenerOld sListenerOld; private NewListener nListener; JMenu menu, submenu; JMenuItem menuItem; JRadioButtonMenuItem rbMenuItem; JCheckBoxMenuItem cbMenuItem; JFrame frame; /** Constructor de una barra de Menú. Para el caso de la aplicación construye la barra superior de menú principal. Para ver una imagen de lo que se refiere presione aquí. */ public MenuBar(JFrame frame, boolean es_nuevo) { super(); /********** listener *****************/ oListener = new OpenListener(frame); sListenerNew = new SaveListenerNew(frame); sListenerOld = new SaveListenerOld(frame); nListener = new NewListener(frame); /*****************************************/ this.frame = frame; //Build the first menu. menu = new JMenu("Archivo"); menu.setMnemonic(KeyEvent.VK_R); menu.getAccessibleContext().setAccessibleDescription("The only menu in this program that has menu items"); add(menu); //a group of JMenuItems menuItem = new JMenuItem("Nuevo"); menuItem.setMnemonic(KeyEvent.VK_N); menuItem.addActionListener(nListener); menu.add(menuItem); menuItem = new JMenuItem("Abrir", KeyEvent.VK_A); menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1, ActionEvent.ALT_MASK)); menuItem.getAccessibleContext().setAccessibleDescription("This doesn't really do anything"); menuItem.addActionListener(oListener); menu.add(menuItem); menuItem = new JMenuItem("Guardar"); menuItem.setMnemonic(KeyEvent.VK_G); if(es_nuevo) menuItem.addActionListener(sListenerNew); //Este listener ocupa los panes 2 if(!es_nuevo) menuItem.addActionListener(sListenerOld); //Este listner ocupa los panes 1 menu.add(menuItem); } }