Вывод диалогового окна java

Вывод диалогового окна java

JOptionPane makes it easy to pop up a standard dialog box that prompts users for a value or informs them of something. For information about using JOptionPane , see How to Make Dialogs, a section in The Java Tutorial. While the JOptionPane class may appear complex because of the large number of methods, almost all uses of this class are one-line calls to one of the static showXxxDialog methods shown below:

Method Name Description
showConfirmDialog Asks a confirming question, like yes/no/cancel.
showInputDialog Prompt for some input.
showMessageDialog Tell the user about something that has happened.
showOptionDialog The Grand Unification of the above three.

Each of these methods also comes in a showInternalXXX flavor, which uses an internal frame to hold the dialog box (see JInternalFrame ). Multiple convenience methods have also been defined — overloaded versions of the basic methods that use different parameter lists. All dialogs are modal. Each showXxxDialog method blocks the caller until the user’s interaction is complete.

icon message
input value
option buttons

The basic appearance of one of these dialog boxes is generally similar to the picture at the right, although the various look-and-feels are ultimately responsible for the final result. In particular, the look-and-feels will adjust the layout to accommodate the option pane’s ComponentOrientation property.
Parameters:
The parameters to these methods follow consistent patterns:

  • ERROR_MESSAGE
  • INFORMATION_MESSAGE
  • WARNING_MESSAGE
  • QUESTION_MESSAGE
  • PLAIN_MESSAGE
  • DEFAULT_OPTION
  • YES_NO_OPTION
  • YES_NO_CANCEL_OPTION
  • OK_CANCEL_OPTION
  • YES_OPTION
  • NO_OPTION
  • CANCEL_OPTION
  • OK_OPTION
  • CLOSED_OPTION
JOptionPane.showInternalMessageDialog(frame, "information", "information", JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION);

Show an internal information dialog with the options yes/no/cancel and message ‘please choose one’ and title information:

JOptionPane.showInternalConfirmDialog(frame, "please choose one", "information", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);

Show a warning dialog with the options OK, CANCEL, title ‘Warning’, and message ‘Click OK to continue’:

Object[] options = < "OK", "CANCEL" >; JOptionPane.showOptionDialog(null, "Click OK to continue", "Warning", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);

Show a dialog asking the user to type in a String: String inputValue = JOptionPane.showInputDialog(«Please input a value»); Show a dialog asking the user to select a String:

Object[] possibleValues = < "First", "Second", "Third" >; 
Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input", JOptionPane.INFORMATION_MESSAGE, null, possibleValues, possibleValues[0]);

Direct Use:
To create and use an JOptionPane directly, the standard pattern is roughly as follows:

JOptionPane pane = new JOptionPane(arguments); pane.set.Xxxx(. ); // Configure JDialog dialog = pane.createDialog(parentComponent, title); dialog.show(); Object selectedValue = pane.getValue(); if(selectedValue == null) return CLOSED_OPTION; //If there is not an array of option buttons: if(options == null) < if(selectedValue instanceof Integer) return ((Integer)selectedValue).intValue(); return CLOSED_OPTION; >//If there is an array of option buttons: for(int counter = 0, maxCounter = options.length; counter < maxCounter; counter++) < if(options[counter].equals(selectedValue)) return counter; >return CLOSED_OPTION;

Warning: Swing is not thread safe. For more information see Swing’s Threading Policy. Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the java.beans package. Please see XMLEncoder .

Читайте также:  Html center login form

Nested Class Summary

Nested classes/interfaces inherited from class javax.swing.JComponent

Nested classes/interfaces inherited from class java.awt.Container

Nested classes/interfaces inherited from class java.awt.Component

Field Summary

Return value from class method if user closes window without selecting anything, more than likely this should be treated as either a CANCEL_OPTION or NO_OPTION .

Type meaning Look and Feel should not supply any options — only use the options from the JOptionPane .

Fields inherited from class javax.swing.JComponent

Fields inherited from class java.awt.Component

Fields inherited from interface java.awt.image.ImageObserver

Constructor Summary

Creates a instance of JOptionPane to display a message using the plain-message message type and the default options delivered by the UI.

Creates an instance of JOptionPane to display a message with the specified message type and the default options,

Creates an instance of JOptionPane to display a message with the specified message type, options, and icon.

Creates an instance of JOptionPane to display a message with the specified message type, icon, and options.

Creates an instance of JOptionPane to display a message with the specified message type, icon, and options, with the initially-selected option specified.

Method Summary

Creates and returns a new JDialog wrapping this centered on the parentComponent in the parentComponent ‘s frame.

Sets the initial value that is to be enabled — the Component that has the focus when the pane is initially displayed.

Sets the input selection values for a pane that provides the user with a list of items to choose from.

Brings up a dialog with the options Yes, No and Cancel; with the title, Select an Option.

Brings up a dialog where the number of choices is determined by the optionType parameter, where the messageType parameter determines the icon to display.

Brings up a dialog with a specified icon, where the number of choices is determined by the optionType parameter.

Shows a dialog requesting input from the user parented to parentComponent with the dialog having the title title and message type messageType .

Prompts the user for input in a blocking dialog where the initial selection, possible selections, and all other options can be specified.

Shows a question-message dialog requesting input from the user, with the input value initialized to initialSelectionValue .

Brings up an internal dialog panel with the options Yes, No and Cancel; with the title, Select an Option.

Brings up a internal dialog panel where the number of choices is determined by the optionType parameter.

Brings up an internal dialog panel where the number of choices is determined by the optionType parameter, where the messageType parameter determines the icon to display.

Brings up an internal dialog panel with a specified icon, where the number of choices is determined by the optionType parameter.

Shows an internal question-message dialog requesting input from the user parented to parentComponent .

Shows an internal dialog requesting input from the user parented to parentComponent with the dialog having the title title and message type messageType .

Prompts the user for input in a blocking internal dialog where the initial selection, possible selections, and all other options can be specified.

Brings up an internal dialog panel that displays a message using a default icon determined by the messageType parameter.

Brings up an internal dialog panel with a specified icon, where the initial choice is determined by the initialValue parameter and the number of choices is determined by the optionType parameter.

Brings up a dialog that displays a message using a default icon determined by the messageType parameter.

Brings up a dialog with a specified icon, where the initial choice is determined by the initialValue parameter and the number of choices is determined by the optionType parameter.

Источник

Class JOptionPane

JOptionPane makes it easy to pop up a standard dialog box that prompts users for a value or informs them of something. For information about using JOptionPane , see How to Make Dialogs, a section in The Java Tutorial.

While the JOptionPane class may appear complex because of the large number of methods, almost all uses of this class are one-line calls to one of the static showXxxDialog methods shown below:

Common JOptionPane method names and their descriptions
Method Name Description
showConfirmDialog Asks a confirming question, like yes/no/cancel.
showInputDialog Prompt for some input.
showMessageDialog Tell the user about something that has happened.
showOptionDialog The Grand Unification of the above three.

Each of these methods also comes in a showInternalXXX flavor, which uses an internal frame to hold the dialog box (see JInternalFrame ). Multiple convenience methods have also been defined — overloaded versions of the basic methods that use different parameter lists.

All dialogs are modal. Each showXxxDialog method blocks the caller until the user’s interaction is complete.

Common dialog
icon message
input value
option buttons

The basic appearance of one of these dialog boxes is generally similar to the picture above, although the various look-and-feels are ultimately responsible for the final result. In particular, the look-and-feels will adjust the layout to accommodate the option pane’s ComponentOrientation property.

Parameters:
The parameters to these methods follow consistent patterns:

  • ERROR_MESSAGE
  • INFORMATION_MESSAGE
  • WARNING_MESSAGE
  • QUESTION_MESSAGE
  • PLAIN_MESSAGE
  • DEFAULT_OPTION
  • YES_NO_OPTION
  • YES_NO_CANCEL_OPTION
  • OK_CANCEL_OPTION

When the selection is changed, setValue is invoked, which generates a PropertyChangeEvent .

If a JOptionPane has configured to all input setWantsInput the bound property JOptionPane.INPUT_VALUE_PROPERTY can also be listened to, to determine when the user has input or selected a value.

  • YES_OPTION
  • NO_OPTION
  • CANCEL_OPTION
  • OK_OPTION
  • CLOSED_OPTION
JOptionPane.showInternalMessageDialog(frame, "information", "information", JOptionPane.INFORMATION_MESSAGE);
JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION);

Show an internal information dialog with the options yes/no/cancel and message ‘please choose one’ and title information:

JOptionPane.showInternalConfirmDialog(frame, "please choose one", "information", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);

Show a warning dialog with the options OK, CANCEL, title ‘Warning’, and message ‘Click OK to continue’:

Object[] options = < "OK", "CANCEL" >; JOptionPane.showOptionDialog(null, "Click OK to continue", "Warning", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);

Show a dialog asking the user to type in a String: String inputValue = JOptionPane.showInputDialog(«Please input a value»); Show a dialog asking the user to select a String:

Object[] possibleValues = < "First", "Second", "Third" >; 
Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input", JOptionPane.INFORMATION_MESSAGE, null, possibleValues, possibleValues[0]);

Direct Use:
To create and use an JOptionPane directly, the standard pattern is roughly as follows:

JOptionPane pane = new JOptionPane(arguments); pane.set.Xxxx(. ); // Configure JDialog dialog = pane.createDialog(parentComponent, title); dialog.show(); Object selectedValue = pane.getValue(); if(selectedValue == null) return CLOSED_OPTION; //If there is not an array of option buttons: if(options == null) < if(selectedValue instanceof Integer) return ((Integer)selectedValue).intValue(); return CLOSED_OPTION; >//If there is an array of option buttons: for(int counter = 0, maxCounter = options.length; counter < maxCounter; counter++) < if(options[counter].equals(selectedValue)) return counter; >return CLOSED_OPTION;

Warning: Swing is not thread safe. For more information see Swing’s Threading Policy.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans has been added to the java.beans package. Please see XMLEncoder .

Источник

Оцените статью