Show Confirm Dialog with Yes and No Button



Following example showcases how to show confirm dialog with Yes and No option in swing based application.

We are using the following APIs.

  • JOptionPane − To create a standard dialog box.

  • JOptionPane.showConfirmDialog() − To show the confirm message box.

  • JOptionPane.YES_NO_OPTION − To get Yes and No buttons.

Example - Showing Confirm Dialog with Yes/No Buttons in Swing Application

SwingTester.java

package com.tutorialspoint;

import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.LayoutManager;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

public class SwingTester {
   public static void main(String[] args) {
      createWindow();
   }

   private static void createWindow() {    
      JFrame frame = new JFrame("Swing Tester");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      createUI(frame);
      frame.setSize(492, 200);      
      frame.setLocationRelativeTo(null);  
      frame.setVisible(true);
   }

   private static void createUI(final JFrame frame){  
      JPanel panel = new JPanel();
      LayoutManager layout = new FlowLayout();  
      panel.setLayout(layout);       

      JButton button = new JButton("Click Me!");
      final JLabel label = new JLabel();
      button.addActionListener(new ActionListener() {
         @Override
         public void actionPerformed(ActionEvent e) {
            int result = JOptionPane.showConfirmDialog(frame,"Sure? You want to exit?", "Swing Tester",
               JOptionPane.YES_NO_OPTION,
               JOptionPane.QUESTION_MESSAGE);
            if(result == JOptionPane.YES_OPTION){
               label.setText("You selected: Yes");
            }else if (result == JOptionPane.NO_OPTION){
               label.setText("You selected: No");
            }else {
               label.setText("None selected");
            }
         }
      });

      panel.add(button);
      panel.add(label);
      frame.getContentPane().add(panel, BorderLayout.CENTER);    
   }  
}

Output

Compile and Run the program and verify the output −

Show an confirm message alert with YES, NO Option
swingexamples_dialogs.htm
Advertisements