Uso básico de elementos Swing con NetBeans – 22 – Uso de Menú - JMenu.

Para esta guía veremos el uso de los elementos Swing Menús, que incluyen la barra de menú, los ítems como los JMenuItem, JCheckBoxMenuItem y JRadioButtonMenuItem. Para el caso, agregamos un JList para almacenar los datos que se recoge cuando se utiliza con eventos.

Diseñamos un formulario utilizando un JFrame (Nombre del formulario UsojMenu). Dentro del formulario agregamos una JList para almacenar los datos que se recoge al ejecutar un evento. En la imagen siguiente vemos el diseño de nuestro formulario, cada elemento tiene un nombre de variable como se especifica en la imagen, tomar en cuenta este punto ya que es necesario para referenciar los objetos. Se puede cambiar el “Nombre de variable” de cada objeto haciendo clic derecho sobre la misma y clic en “Cambiar nombre de variable…”. (clic sobre la imagen para ampliar)

Lista de las importaciones que debemos de tener para utilizar ciertos elementos en nuestro formulario. Agregamos algunas líneas de código en el constructo del JFrame que se explican con comentarios.

Códigos utilizados en el constructor e importaciones.

Código Java
package com.swing.basic;

import javax.swing.DefaultListModel;
import javax.swing.ImageIcon;//Importaciones
import javax.swing.JList;
import javax.swing.ListSelectionModel;

/**
*
* @author ECS
*/

public class UsoJMenu extends javax.swing.JFrame {

/**
* Creates new form UsoJMenu
*/

public UsoJMenu() {
initComponents();
setLocationRelativeTo(null);//Centrar el formulario
setTitle("Uso de JList.");
//Icono personalizado para el formulario
setIconImage(createImageIcon("/com/swing/basic/img/Login.png").getImage());
//Método de arranque.
inicio();
}
private DefaultListModel modelList;//Variable de clase.

Creamos los métodos siguiente en modo fuente, los métodos creados por nosotros las ubicamos al final de la declaración de variables, justo antes de la llave de cierre general. Se agregan comentario para aclarar la función de cada línea de código.

Código Java
    private void inicio(){
jRBM.setSelected(false);
salir.setIcon(createImageIcon("/com/swing/basic/img/update.png"));
jCBM.setSelected(false);
//DefaultListModel para manejar las lista.
modelList = new DefaultListModel();
//Establecemos algunas propiedades de la lista
//Establecemos el modelo, nos permite agregar y eliminar elementos, etc.
jL.setModel(modelList);
//Intervalo de selección
jL.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
jL.setSelectedIndex(0);
jL.setVisibleRowCount(8);
//Distribución vertical
jL.setLayoutOrientation(JList.VERTICAL);
}
//Método para obtener un archivo de imagen
protected static ImageIcon createImageIcon(String path) {
java.net.URL imgURL;
imgURL = UsoJRadioButton.class.getResource(path);
if (imgURL != null) {
return new ImageIcon(imgURL);
} else {
System.err.println("Archivo no encontrado: " + path);
return null;
}
}

Utilizamos el evento “ActionPerformed” para los menús. Si ya vieron alguna guía anterior a esta podrán saber cómo se agrega un evento, la ubicación habitual tanto para la lista de eventos, como también los métodos que hayamos creado al igual de la forma en que se implementan estos eventos y llamadas a métodos.

Código Java
    private void jRBMActionPerformed(java.awt.event.ActionEvent evt) {                                     
modelList.addElement(evt);//Se egrega un elemento a la lista
//evt contiene las propiedades del evento del objeto
}

private void jCBMActionPerformed(java.awt.event.ActionEvent evt) {
modelList.addElement(evt);
}

private void salirActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}

private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
modelList.addElement(evt);
}

Llegado a esta parte podremos ejecutar nuestro formulario. (Por si hay alguna duda en el proceso, debemos hacer clic derecho sobre nuestro archivo fuente y presionar “ejecutar archivo” ya que nuestro proyecto no tiene una clase principal definida)

No hay comentarios :

Publicar un comentario