Message Dialog Box Java Program

01
of 01

Creating Message Boxes in Java

Man working in an office
Johner Images/Getty Images

A message box is a simple pop-up window that displays a message to the user and is dismissed with the click of a button. Using Java, you don't have to build your own dialog boxes from scratch; the JOptionPane class provides standard methods for making a variety of dialog boxes. 

Below is example code showing simple message dialog boxes created using the showMessageDialog, showOptionDialog and showConfirmDialog methods of the JOptionPane class. The program goes through a couple of examples for each method leading to a series of dialog boxes appearing one after the other. 

Tip: Have a look at JOptionPane Option Chooser Program for a more in-depth application that gives the user the option of creating all the different variations of a dialog box.

Java Source Code for Dialog Boxes


//This program shows a series of dialog boxes one
//after the other
//Imports are listed in full to show what's being used
//could just import javax.swing.* and java.awt.* etc..
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import javax.swing.Icon;
import java.awt.EventQueue;
public class SimpleDialogFrame extends JFrame{
//Using a standard Java icon
private Icon optionIcon = UIManager.getIcon("FileView.computerIcon");
//Application start point
public static void main(String[] args) {
//Use the event dispatch thread for Swing components
EventQueue.invokeLater(new Runnable()
{
public void run()
{
//create GUI frame
new SimpleDialogFrame().setVisible(true);
}
});
}
public SimpleDialogFrame()
{
//make sure the program exits when the frame closes
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("Simple Dialog Box Example");
setSize(500,500);
//This will center the JFrame in the middle of the screen
setLocationRelativeTo(null);
//TO TRY: Comment out the above line and use null for the parent
//component in one of the JOptionPane calls to see the difference
//it makes to the position of the dialog box.
setVisible(true);
//Use the showMessageDialog method for a plain message dialog box
JOptionPane.showMessageDialog(this, "This is the dialog message"
,"This is the dialog title", JOptionPane.PLAIN_MESSAGE);
//Use the showMessageDialog method for a error message dialog box
JOptionPane.showMessageDialog(this, "This is the dialog message"
,"This is the dialog title", JOptionPane.ERROR_MESSAGE);
//Use the showConfirmDialog method for a warning message dialog box
//with OK, CANCEL buttons. Capture the button number with an int variable
int choice = JOptionPane.showConfirmDialog(this, "This is the dialog message"
,"This is the dialog title", JOptionPane.WARNING_MESSAGE
, JOptionPane.OK_CANCEL_OPTION);
//Use the showConfirmDialog method for an information message dialog box
//with YES, NO, CANCEL buttons. It shows the button choice of previous
//message box
JOptionPane.showConfirmDialog(this,"Last button pressed was number " + choice
, "This is the dialog title", JOptionPane.INFORMATION_MESSAGE
, JOptionPane.YES_NO_CANCEL_OPTION);
//The showOptionDialog method can be made to work as if it were the confirmDialog
//method by using null for the last three parameters. In this case the options for
//the button types (YES, NO, CANCEL) and the message type (INFORMATION_MESSAGE)
//will be used.
JOptionPane.showOptionDialog(this, "This is the dialog message"
, "This is the dialog title", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE
,null, null, null);
//Use the showOptionDialog method to make a custom box. If the options parameter
//is null the YES, NO, CANCEL buttons are used. Also notice that even though
//the message type is INFORMATION_MESSAGE the usual icon is overriden by the one
//provided.
JOptionPane.showOptionDialog(this, "This is the dialog message"
, "This is the dialog title", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE
,optionIcon, null, null);
//String array to be used for the buttons
String[] buttonOptions = new String[] {"Happy Button", "Sad Button", "Confused Button"};
//If the options parameter is not null the YES, NO, CANCEL buttons are not used
//The buttons are made with the object array - in this case a String array.
JOptionPane.showOptionDialog(this, "This is the dialog message"
, "This is the dialog title", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE
,optionIcon, buttonOptions, buttonOptions[0]);
}
}
Format
mla apa chicago
Your Citation
Leahy, Paul. "Message Dialog Box Java Program." ThoughtCo, Aug. 4, 2017, thoughtco.com/simple-message-dialog-boxes-program-2033985. Leahy, Paul. (2017, August 4). Message Dialog Box Java Program. Retrieved from https://www.thoughtco.com/simple-message-dialog-boxes-program-2033985 Leahy, Paul. "Message Dialog Box Java Program." ThoughtCo. https://www.thoughtco.com/simple-message-dialog-boxes-program-2033985 (accessed May 24, 2018).