Show Input Dialog with Text Box



Following example showcases how to get user input from a textbox in a dialog in swing based application.

We are using the following APIs.

  • JOptionPane − To create a standard dialog box.

  • JOptionPane.showInputDialog() − To show the message alert with input options.

  • options as null − To show a text box in input box.

Example - Showing Input Dialog with TextBox 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(560, 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) { String result = (String)JOptionPane.showInputDialog( frame, "Select one of the color", "Swing Tester", JOptionPane.PLAIN_MESSAGE, null, null, "Red" ); if(result != null && result.length() > 0){ label.setText("You selected:" + result); }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 −

Get user's input from a textbox in a input dialog
swingexamples_dialogs.htm
Advertisements