La Web del Programador: Comunidad de Programadores
 
    Pregunta:  4800 - COMO CREO UN MENU EN JAVA??
Autor:  Leonardo Prada
De antemano muchisimas gracias.
La idea es crear un menu desde java, si alguien tiene una ejemplo.
Gracias...

  Respuesta:  Pablo
Espero que este trozo de código (Clase MenuMain) te ayude a entender su funcionamiento
Un saludo

import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class MenuMain extends Frame implements ActionListener,WindowListener{//clase MenuMain
static final int HOR_TAMANO = 500;
static final int VER_TAMANO = 300;
MenuBar barra;
MenuItem mItem1,mItem2,mItem3,mItem4,mItem5,mItem6;

public MenuMain() {//Constructor
super( "Simple programa en JAVA" );

pack();
setBounds(275,250, HOR_TAMANO,VER_TAMANO );//caracteristicas de la ventana
setBackground( Color.gray );
addWindowListener(this);
show();
barra = new MenuBar();//declaro una variable de tipo MenuBar
Menu m = new Menu( "Tareas" );//declaro un primer menú
m.addActionListener(this);//permito que el menu reciba eventos

mItem1 = new MenuItem( "Abrir");//primer elemento del primer menú
m.add( mItem1 );//añado el menuitem al menu creado con anterioridad
mItem1.addActionListener(this);

mItem2 = new MenuItem( "Guardar Como ..."); //segundo elemento del primer menú
m.add( mItem2 );
mItem2.addActionListener(this);

mItem3=new MenuItem( "Imprimir");//tercer elemento del primer menú
m.add( mItem3);
mItem3.addActionListener(this);

m.addSeparator();

mItem4=new MenuItem( "Salir");//cuarto elemento del primer menú
m.add(mItem4);
mItem4.addActionListener(this);

barra.add( m );

m = new Menu( "Creditos" );
m.addActionListener(this);

mItem5=new MenuItem( "Autor" );//primer elemento del segundo menú
m.add( mItem5 );
mItem5.addActionListener(this);

mItem6=new MenuItem( "Acerca de..." ); //segundo elemento del egundo menú
m.add(mItem6 );
mItem6.addActionListener(this);
barra.add( m );//añado a la barra de menu el menu m

p.add(new TextField(10));//añado y declaro un textfield

}

//manejo de eventos del menu
public void actionPerformed(ActionEvent evt )
{

if(evt.getSource()==mItem3)
{
new otraClase();//llama a la otra clase (por ejemplo otra ventana }

if (evt.getSource()==mItem4)
{
System.exit(0); //sale de la aplicación
}

if (evt.getSource()==mItem5)
{
new Autor(this,"Creador",true); //llamo a una ventana de dialogo modal Autor.class
}
}

//manejo de eventos de la ventana, declaro todos (necesario) pero solo utilizo el tercero (salida de la aplicación pulsando la X
public void windowActivated(WindowEvent e){;}
public void windowClosed(WindowEvent e){;}
public void windowClosing(WindowEvent e){System.exit(0);}
public void windowDeactivated(WindowEvent e){;}
public void windowDeiconified(WindowEvent e){;}
public void windowIconified(WindowEvent e){;}
public void windowOpened(WindowEvent e){;}

public static void main( String args[] ) {
new MenuMain();
}
}

  Respuesta:  Liencres Liencres
Si lo que quieres es crear un menu tipo Güindous (Archivo,Edicion...), mi solucion esta en el paquete AWT de java, el componente JMenu.