Hay dos tipos de menús: un menú desplegable y un menú emergente. Este capítulo solo discute el método de programación del menú desplegable. El menú es diferente de JComboBox y JCheckbox, y siempre son visibles en la interfaz. Lo mismo del menú con JComboBox es que solo se puede seleccionar un elemento a la vez.
Seleccionar una opción en el menú desplegable o el menú emergente genera un evento ActionEvent. El evento se envía al monitor de esa opción, y el monitor explica el significado del evento.
Barras de menú, menús y elementos de menú
El menú desplegable se visualiza con el nombre que aparece en la barra de menú. Hay dos formas de activar el menú desplegable. Una es presionar el botón del mouse y mantenerlo presionado, mueva el mouse hasta que el mouse se libere para completar la selección, y el elemento del menú que se muestra con alto brillo está seleccionado. Otra forma es hacer clic en el mouse cuando el cursor está en el nombre del menú en la barra de menú, en cuyo caso se expande el menú y los elementos del menú se muestran con alto brillo.
Una barra de menú puede contener múltiples menús (JMenu), y cada menú puede tener muchos elementos de menú (JMenuitem). Por ejemplo, las barras de menú del entorno Eclipse incluyen archivos, edición, fuente, refactor y otros menús, y cada menú tiene muchos elementos de menú. Por ejemplo, el menú Archivo incluye elementos de menú como archivo nuevo, abierto, cierre, cierre todo.
El método de agregar menús a la ventana es: primero crear un objeto de menú, luego crear varios objetos de menú, colocar estos objetos de menú en la barra de menú y luego agregar elementos de menú a cada objeto de menú según sea necesario.
Los elementos del menú en el menú también pueden ser un menú completo. Dado que el elemento del menú puede volver a ser otro menú completo, se puede construir una estructura de menú jerárquica.
1. Barra de menú
Un ejemplo de JMenubar es una barra de menú. Por ejemplo, el siguiente código crea un objeto Menubar Menubar:
JMenubar Menubar = new JMenubar ();
Para agregar una barra de menú en la ventana, debe usar el método setjmenubar () en la clase jframe. Por ejemplo, código:
setJMenubar (Menubar);
Los métodos comunes de JMenubar son:
2. Menú <Br /> El objeto creado por la clase JMenu es el menú. Los métodos comunes de la clase JMenu son los siguientes:
3. Elemento de menú <Br /> Un ejemplo de clase JMenuitem es un elemento de menú. Los métodos comunes de clase JMenuitem son los siguientes:
4. Manejar eventos de menú <Br /> La fuente del evento del menú es hacer clic en un elemento de menú con el mouse. La interfaz que maneja este evento es ActionListener, y el método de interfaz que se implementará es de Actionperformed (ActionEvent E) y el método para obtener la fuente de eventos getSource ().
[Ejemplo] El método de implementación de la ventana del diagrama de aplicaciones pequeñas tiene una barra de menú. Hay un botón. Cuando se selecciona un elemento de menú, el método de monitoreo del elemento del menú muestra el elemento de menú correspondiente seleccionado en el cuadro de texto.
import java.applet.*import javax.swing.*; import java.awt.*; import java.awt.event.*; class Menuwindow extiende jFrame implementa ActionListener {Public Static JTextField Text; , ActionListener oyente) {JMenuitem Anitem = new JMenuitem (Menuname); (S) Container Con = this.getContentPane (); ; "Singing", este); ; ! ");}} clase pública Ejemplo6_5 extiende el applet implementa ActionListener {Window de Menuwindow; JButton Button; Boolean Bflg; public void init () {Button = new JBut Ton (" Abra mi ventana deportiva y de entretenimiento "); Bflg = True; ventana; ventana; ventana; ventana; = nuevo Menuwindow ("Ventana deportiva y de entretenimiento", 100,100); ) {Window.setVisible (true); ":::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::: ¿ :::::::::::::::::: para::: ::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::: no 5. Insertar submenu <Br /> Se crea un menú y se crea varios elementos del menú, y uno de los elementos del menú es otro menú (incluidos otros elementos del menú), que constituye la anidación del menú. Por ejemplo, cambie el código relevante en el programa anterior a lo siguiente:
Menú menú1, menú2, elemento4;
Inserte el siguiente código para crear elementos del menú item41 y item42 y agréguelos al menú Elemento4:
item41 = nuevo Menuitem ("Dongfanghong");
Luego, cuando haga clic en el menú Elemento4, se abrirán dos elementos del menú para la selección.
6. Agregue un elemento de salida al menú <Br /> Agregue un nuevo elemento de menú para agregar monitoreo al elemento de menú Use el método System.Exit () en el método de monitoreo correspondiente para salir de Java al hacer clic en el elemento del menú. . Por ejemplo, el siguiente código esquemático:
... item7 = new Menuitem ("Salir"); item7.addactionListener (this); ... public void ActionPerformed (ActionEvent E) {if (e.getSource () == item7) {System.e xit (0);}} 7. Establezca teclas de acceso directo para elementos de menú <Br /> Use la clase Menushortcut para configurar las teclas de acceso directo para los elementos del menú. El método de construcción es Menushortcut (int Key). La clave se puede usar como valores KeyVent.vk_a a KENEVENVE.VK_Z, o como el valor del código de clave 'A' a 'Z'. Elementos del menú Use el método SetShortCut (Menushortcut K) para establecer las teclas de acceso directo. Por ejemplo, el siguiente código establece la letra E como una clave de acceso directo.
Class Herwindow extiende el marco ActionListener {Menubar Menubar;Seleccione los elementos del menú de cuadro
El menú también puede contener opciones con estados de selección persistentes, y este menú especial puede definirse mediante la clase JCHECKBOXMENITEM. Al igual que un cuadro de selección, el objeto JCheckboxMenuitem puede indicar si una opción está seleccionada o no, o si se puede agregar al menú desplegable como un elemento de menú. Cuando hace clic en el menú jCheckBoxMenuitem, el símbolo de tick aparece en el lado izquierdo o borra el símbolo de tigas. Por ejemplo, en la clase Menuwindow del programa en el Ejemplo 6.5, coloque el código
AddItem (menú1, "Ejecutar", esto);
Reescribirlo en el siguiente código, cambiando los dos elementos de menú ordinarios "ejecutando" y "ejecutar saltar" en dos elementos del menú de caja de selección:
JCHECKMENITEM item1 = new JCheckBoxMenuTem ("Ejecución"); "Skip Rope"); item2.AddactionListener (this); menú1.add (elemento2);