Diálogos de mensajes en Java (GUI)

Los cuadros de diálogo de mensajes proporcionan información al usuario. Los diálogos de mensajes se crean con el método JOptionPane.showMessageDialog().

Llamamos al método estático showMessageDialog() de la clase JOptionPane para crear un diálogo de mensaje. Proporcionamos el elemento principal del cuadro de diálogo, el texto del mensaje, el título y el tipo de mensaje. El tipo de mensaje es una de las siguientes constantes: 

  1. MENSAJE DE ERROR
  2. MENSAJE DE ADVERTENCIA
  3. QUESTION_MESSAGE
  4. INFORMACIÓN_MENSAJE

Métodos utilizados: 

  1. setLayout(…): el método nos ayuda a establecer el diseño del contenedor, a menudo un JPanel, para decir FlowLayout, BorderLayout, GridLayout, diseño nulo o cualquier diseño que queramos agregar al contenedor.
  2. setBounds(…): el método se usa para establecer la ubicación y el tamaño de componentes como JButton, y solo es útil si se usa un diseño nulo en JFrame.
  3. setVisible(…): el método se utiliza para establecer el estado de visibilidad de JFrame. 
    1. setVisible(true) establecerá JFrame visible para el usuario.
    2. setVisible (falso) establecerá JFrame no visible para el usuario.
  4. getSource(): un objeto de evento contiene una referencia al componente que generó el evento. Para extraer esa referencia del objeto de evento, usamos el método getSource().
  5. add(): se usa para agregar componentes como JButton, etc., al contenedor de JFrame.

A continuación se muestra la implementación del método discutido anteriormente para mostrar los diálogos de mensajes:

Java

// Java program to show ERROR_MESSAGE dialog
// in Java. Importing different Package.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
class Demo extends JFrame implements ActionListener
{
    // Declaration of object of JButton class.
    JButton b1;
     
    // Constructor of Demo class
    Demo()
    {
        // Setting layout as null of JFrame.
        this.setLayout(null);
         
        // Initialization of object of "JButton" class.
        b1 = new JButton("Button 1");
         
        // Setting Bounds of a JButton.
        b1.setBounds(130, 05, 100, 50);
         
        //"this" keyword in java refers to current object.
        // Adding JButton on JFrame.
        this.add(b1);
         
        // Adding Listener toJButton.
        b1.addActionListener(this);
    }
 
    // Override Method
    public void actionPerformed(ActionEvent evt)
    {
        if (evt.getSource() == b1)
        {
            // Code To popup an ERROR_MESSAGE Dialog.
            JOptionPane.showMessageDialog(this, "Enter a valid Number",
                                   "ERROR", JOptionPane.ERROR_MESSAGE);
        }
    }
}
 
class MessageDialogs1 {
     
    // Driver code
    public static void main(String args[])
    {
        // Creating Object of demo class.
        Demo f = new Demo();
         
        // Setting Bounds of a Frame.
        f.setBounds(200, 200, 400, 300);
         
        // Setting Resizable status of frame as false
        f.setResizable(false);
         
        // Setting Visible status of frame as true.
        f.setVisible(true);
    }
}

Producción : 

Java

// Java program to show WARNING_MESSAGE dialog
// in Java. Importing different Package.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
class Demo extends JFrame implements ActionListener
{
    // Declaration of object of JButton class.
    JButton b1;
     
    // Constructor of Demo class
    Demo()
    {
        // Setting layout as null of JFrame.
        this.setLayout(null);
         
        // Initialization of object of "JButton" class.
        b1 = new JButton("Button 2");
         
        // Setting Bounds of a JButton.
        b1.setBounds(130, 05, 100, 50);
         
        //"this" keyword in java refers to current object.
        // Adding JButton on JFrame.
        this.add(b1);
         
        // Adding Listener toJButton.
        b1.addActionListener(this);
    }
 
    // Override Method
    public void actionPerformed(ActionEvent evt)
    {
        if (evt.getSource() == b1) {
             
            // Code To popup an WARNING_MESSAGE Dialog.
            JOptionPane.showMessageDialog(this, "Enter a valid String",
                               "WARNING", JOptionPane.WARNING_MESSAGE);
        }
    }
}
 
class MessageDialogs2 {
     
    // Driver code
    public static void main(String args[])
    {
        // Creating Object of demo class.
        Demo f = new Demo();
         
        // Setting Bounds of a Frame.
        f.setBounds(200, 200, 400, 300);
         
        // Setting Resizable status of frame as false
        f.setResizable(false);
         
        // Setting Visible status of frame as true.
        f.setVisible(true);
    }
}

Producción : 
 

Java

// Java program to show QUESTION_MESSAGE
// dialog in Java. Importing different Package.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
class Demo extends JFrame implements ActionListener
{
    // Declaration of object of JButton class.
    JButton b1;
     
    // Constructor of Demo class
    Demo()
    {
        // Setting layout as null of JFrame.
        this.setLayout(null);
         
        // Initialization of object of "JButton" class.
        b1 = new JButton("Button 3");
         
        // Setting Bounds of a JButton.
        b1.setBounds(130, 05, 100, 50);
         
        //"this" keyword in java refers to current object.
        // Adding JButton on JFrame.
        this.add(b1);
         
        // Adding Listener toJButton.
        b1.addActionListener(this);
    }
 
    // Override Method
    public void actionPerformed(ActionEvent evt)
    {
        if (evt.getSource() == b1)
        {
            // Code TO popup a QUESTION_MESSAGE Dialog.
            JOptionPane.showMessageDialog(this, "Do you want to quit",
                             "Question", JOptionPane.QUESTION_MESSAGE);
        }
    }
}
 
class MessageDialogs3 {
     
    // Driver code
    public static void main(String args[])
    {
        // Creating Object of demo class.
        Demo f = new Demo();
         
        // Setting Bounds of a Frame.
        f.setBounds(200, 200, 400, 300);
         
        // Setting Resizable status of frame as false
        f.setResizable(false);
         
        // Setting Visible status of frame as true.
        f.setVisible(true);
    }
}

Producción : 

Java

// Java program to show INFORMATION_MESSAGE
// dialog in Java. Importing different Package.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
class Demo extends JFrame implements ActionListener
{
    // Declaration of object of JButton class.
    JButton b1;
     
    // Constructor of Demo class
    Demo()
    {
        // Setting layout as null of JFrame.
        this.setLayout(null);
         
        // Initialization of object of "JButton" class.
        b1 = new JButton("Button 4");
         
        // Setting Bounds of a JButton.
        b1.setBounds(130, 05, 100, 50);
         
        //"this" keyword in java refers to current object.
        // Adding JButton on JFrame.
        this.add(b1);
         
        // Adding Listener toJButton.
        b1.addActionListener(this);
    }
 
    // Override Method
    public void actionPerformed(ActionEvent evt)
    {
        if (evt.getSource() == b1)
        {
            // Code To popup an INFORMATION_MESSAGE Dialog.
            JOptionPane.showMessageDialog(this, "You Pressed Button FOUR",
                                          "INFORMATION",
                                          JOptionPane.INFORMATION_MESSAGE);
        }
    }
}
 
class MessageDialogs4 {
     
    // Driver code
    public static void main(String args[])
    {
         
        // Creating Object of demo class.
        Demo f = new Demo();
         
        // Setting Bounds of a Frame.
        f.setBounds(200, 200, 400, 300);
         
        // Setting Resizable status of frame as false
        f.setResizable(false);
         
        // Setting Visible status of frame as true.
        f.setVisible(true);
    }
}

Producción : 

Publicación traducida automáticamente

Artículo escrito por Amaninder.Singh 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 *