Oscilación de Java | JPopupMenu

JPopupMenu es una clase del paquete javax.swing. Es una implementación de PopupMenu. JPopupMenu genera una pequeña ventana que aparece y muestra una serie de opciones. JPopupMenu se puede usar para generar una pequeña ventana en cualquier posición dentro del contenedor. 
Los constructores de la clase son: 
 

  1. JPopupMenu() : crea un menú emergente con un nombre vacío 
     
  2. JPopupMenu(String name) : crea un menú emergente con el título especificado.
     

Los métodos comúnmente utilizados de JPopupMenu son: 
 

  1. add(JMenuItem menuItem) : agrega menuItem al menú emergente.
     
  2. add(String s) : agrega String al menú emergente.
     
  3. String getLabel() : obtiene la etiqueta del menú emergente.
     
  4. boolean is Visible() : devuelve si el menú JPopup está visible o no.
     
  5. setLabel(String s) : establece la etiqueta del menú emergente.
     
  6. setLocation(int x, int y) : establece la ubicación del menú emergente en las coordenadas dadas
     
  7. setPopupSize(int ancho, int altura) : establece el tamaño de la ventana emergente para dar alto y ancho
     
  8. setVisible(boolean b) : establece la visibilidad del menú emergente, visible si se pasa verdadero como argumento o viceversa.
     
  9. show(Component c, int x, int y) : muestra el menú emergente en la posición x, y dentro del componente c. 
     

1. Programa para mostrar un menú emergente simple 
 

Java

// Java program to show a simple popup menu
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class Popup extends JFrame implements ActionListener {
 
    // java button
    static JButton b;
 
    // java frame
    static JFrame f;
 
    // popup menu
    static JPopupMenu pm;
 
    // default constructor
    Popup()
    {
    }
 
    // main class
    public static void main(String[] args)
    {
        // create a frame
        f = new JFrame("Popup");
 
        // set the size of the frame
        f.setSize(400, 400);
 
        // close the frame when close button is pressed
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        // create anew panel
        JPanel p = new JPanel();
 
        // create an object of mouse class
        Popup pop = new Popup();
 
        // create a button
        b = new JButton("click");
 
        // addActionListener
        b.addActionListener(pop);
        p.add(b);
        f.add(p);
        f.show();
    }
 
    // when the button is clicked
    public void actionPerformed(ActionEvent e)
    {
        String s = e.getActionCommand();
        if (s.equals("click")) {
            // create a popup menu
            pm = new JPopupMenu("Message");
 
            // create a label
            JLabel l = new JLabel("this is the popup menu");
 
            // add the label to the popup
            pm.add(l);
 
            // add the popup to the frame
            pm.show(f, 100, 100);
        }
    }
}

Producción :
 

2. Programa para mostrar un menú emergente y elementos de menú. 
 

Java

// Java program to show a popup menu
// and menu items to it
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class Popup extends JFrame implements ActionListener {
 
    // java button
    static JButton b;
 
    // java frame
    static JFrame f;
 
    // popup menu
    static JPopupMenu pm;
 
    // JLabel
    JLabel l;
 
    // default constructor
    Popup()
    {
    }
 
    // main class
    public static void main(String[] args)
    {
        // create a frame
        f = new JFrame("Popup");
 
        // set the size of the frame
        f.setSize(400, 400);
 
        // close the frame when close button is pressed
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        // create anew panel
        JPanel p = new JPanel();
 
        // create an object of mouse class
        Popup pop = new Popup();
 
        // create a button
        b = new JButton("click");
 
        // addActionListener
        b.addActionListener(pop);
 
        // create a popup menu
        pm = new JPopupMenu("Message");
 
        // create menuItems
        JMenuItem m1 = new JMenuItem("Item1");
        JMenuItem m2 = new JMenuItem("Item2");
        JMenuItem m3 = new JMenuItem("Item3");
 
        // create a Jlabel
        JLabel l = new JLabel("nothing clicked");
 
        // add menuitems to popup menu
        pm.add(m1);
        pm.add(m2);
        pm.add(m3);
 
        // addActionListener
        m1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                l.setText("Item 1 clicked.");
            }
        });
 
        m2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                l.setText("Item 2 clicked.");
            }
        });
 
        m3.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                l.setText("Item 3 clicked.");
            }
        });
 
        // add button and label to frame
        p.add(b);
        p.add(l);
 
        f.add(p);
        f.show();
    }
 
    // when the button is clicked
    public void actionPerformed(ActionEvent e)
    {
        String s = e.getActionCommand();
        if (s.equals("click")) {
 
            // add the popup to the frame
            pm.show(f, 200, 200);
        }
    }
}

Producción : 
 

Nota: es posible que estos códigos no se ejecuten en un IDE en línea, use un compilador fuera de línea
 

Publicación traducida automáticamente

Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *