今天做项目的时候遇到了一个问题:弹出对话框选择确定或取消指定操作,于是去网上搜了一把,其中这篇文章写的比较详细(相对而言):
http://www.java-cn.com/club/html/36/n-4436.html
在JDK5中也有说明:
showInputDialog
public static String showInputDialog(Object message) throws HeadlessException
-
显示请求用户输入的问题消息对话框。该对话框使用默认的边框,通常意味着在屏幕上居中显示。
-
-
-
参数:
-
message
- 要显示的Object
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showInputDialog
public static String showInputDialog(Object message, Object initialSelectionValue)
-
显示请求用户输入的问题消息对话框,它带有已初始化为
initialSelectionValue
的输入值。该对话框使用默认的窗体,通常意味着在屏幕上居中显示。 -
-
-
参数:
-
message
- 要显示的Object
-
initialSelectionValue
- 用于初始化输入字段的值
从以下版本开始:
- 1.4
-
showInputDialog
public static String showInputDialog(Component parentComponent, Object message) throws HeadlessException
-
显示请求用户输入内容的问题消息对话框,它以
parentComponent
为父级。该对话框显示于Component
的窗体的上部,通常位于Component
之下。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showInputDialog
public static String showInputDialog(Component parentComponent, Object message, Object initialSelectionValue)
-
显示请求用户输入内容的问题消息对话框,它以
parentComponent
为父级。输入值将被初始化为initialSelectionValue
。该对话框显示于Component
的窗体的上部,通常位于Component
之下。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
-
initialSelectionValue
- 用于初始化输入字段的值
从以下版本开始:
- 1.4
-
showInputDialog
public static String showInputDialog(Component parentComponent, Object message, String title, int messageType) throws HeadlessException
-
显示请求用户提供输入的对话框,它以
parentComponent
为父级,该对话框的标题为title
,消息类型为messageType
。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
-
title
- 要在对话框的标题栏中显示的String
-
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showInputDialog
public static Object showInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue) throws HeadlessException
-
提示用户在可以指定初始选择、可能选择及其他所有选项的模块化的对话框中输入内容。用户可以从
selectionValues
中进行选择,其中null
表示用户可以输入想输入的任何内容,通常依靠JTextField
来实现。initialSelectionValue
是用于提示用户的初始值。任由 UI 决定如何最好的表示selectionValues
,但通常情况下将使用JComboBox
、JList
或JTextField
。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
-
title
- 要在对话框的标题栏中显示的String
-
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 要显示的Icon
图像 -
selectionValues
- 给出可能选择的Object
数组 -
initialSelectionValue
- 用于初始化输入字段的值
返回:
-
用户输入;返回
null
意味着用户取消了输入
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showMessageDialog
public static void showMessageDialog(Component parentComponent, Object message) throws HeadlessException
-
调出标题为 "Message" 的信息消息对话框。
-
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showMessageDialog
public static void showMessageDialog(Component parentComponent, Object message, String title, int messageType) throws HeadlessException
-
调出对话框,它显示使用由
messageType
参数确定的默认图标的 message。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showMessageDialog
public static void showMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon) throws HeadlessException
-
调出一个显示信息的对话框,为其指定了所有参数。
-
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 要在对话框中显示的图标,该图标可以帮助用户识别要显示的消息种类
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showConfirmDialog
public static int showConfirmDialog(Component parentComponent, Object message) throws HeadlessException
-
调出带有选项
Yes、
No 和
Cancel 的对话框;标题为
Select an Option。
-
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
返回:
- 指示用户所选选项的整数 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showConfirmDialog
public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType) throws HeadlessException
-
调出一个由
optionType
参数确定其中选项数的对话框。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的 int:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
返回:
- 指示用户所选选项的 int 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showConfirmDialog
public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType) throws HeadlessException
-
调用一个由
optionType
参数确定其中选项数的对话框,messageType
参数确定要显示的图标。messageType
参数主要用于提供来自外观的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
。 -
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的整数:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
-
messageType
- 指定此消息种类的整数;主要用于确定来自可插入外观的图标:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
返回:
- 指示用户所选选项的整数 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showConfirmDialog
public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon) throws HeadlessException
-
调出一个带有指定图标的对话框,其中的选项数由
optionType
参数确定。messageType
参数主要用于提供来自外观的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的 Object -
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的 int:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
-
messageType
- 指定此消息种类的 int,主要用于确定来自可插入外观的图标:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 要在对话框中显示的图标
返回:
- 指示用户所选选项的 int 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showOptionDialog
public static int showOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue) throws HeadlessException
-
调出一个带有指定图标的对话框,其中的初始选择由
initialValue
参数确定,选项数由optionType
参数确定。如果
optionType
为YES_NO_OPTION
或者YES_NO_CANCEL_OPTION
,并且options
参数为null
,则由外观提供选项。messageType
参数主要用于提供来自外观的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的整数:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
-
messageType
- 指定消息种类的整数,主要用于确定来自可插入外观的图标:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 在对话框中显示的图标 -
options
- 指示用户可能选择的对象组成的数组;如果对象是组件,则可以正确呈现;非String
对象使用其toString
方法呈现;如果此参数为null
,则由外观确定选项 -
initialValue
- 表示对话框的默认选择的对象;只有在使用options
时才有意义;可以为null
返回:
-
指示用户所选选项的整数;如果用户关闭了对话框,则返回
CLOSED_OPTION
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
createDialog
public JDialog createDialog(Component parentComponent, String title) throws HeadlessException
-
创建并在
parentComponent
窗体中的parentComponent
中央返回一个包装this
的新JDialog
。title
是返回对话框的标题。用户不能调整返回的JDialog
,但是程序可以通过调用JDialog
实例上的setResizable
来更改此属性。返回的JDialog
将被设置为:一旦将其关闭或者用户单击其中一个按钮,就会相应地设置选项窗格的值属性并关闭对话框。每次对话框变得可见时,它会将选项窗格的值属性重置为JOptionPane.UNINITIALIZED_VALUE
,从而确保用户的后续操作能够正确地关闭对话框。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的窗体;如果parentComponent
不具有Frame
,则使用默认的Frame
-
title
- 对话框的标题字符串
返回:
-
a 包含此实例的新
JDialog
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回true
另请参见:
-
GraphicsEnvironment.isHeadless()
-
showInternalMessageDialog
public static void showInternalMessageDialog(Component parentComponent, Object message)
-
调出内部确认对话框面板。该对话框是一个信息消息对话框,标题为 "Message"。
-
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的对象
-
showInternalMessageDialog
public static void showInternalMessageDialog(Component parentComponent, Object message, String title, int messageType)
-
调出一个显示消息的内部对话框面板,它使用由
messageType
参数确定的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
showInternalMessageDialog
public static void showInternalMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)
-
调出一个显示消息的内部对话框面板,为其指定了所有参数。
-
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
-
title
- 对话框的标题字符串 -
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 要在对话框中显示的图标,该图标可以帮助用户识别要显示的消息种类
-
showInternalConfirmDialog
public static int showInternalConfirmDialog(Component parentComponent, Object message)
-
调出带有选项
Yes、
No 和
Cancel 的内部对话框面板;标题为
Select an Option。
-
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要显示的Object
返回:
- 指示用户所选选项的整数
-
showInternalConfirmDialog
public static int showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType)
-
调出一个由
optionType
参数确定其中选项数的内部对话框面板。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要在对话框中显示的对象;Component
对象呈现为Component
;String
对象呈现为字符串;其他对象将通过toString
方法被转换为String
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的整数:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
返回:
- 指示用户所选选项的整数
-
showInternalConfirmDialog
public static int showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType)
-
调出一个由
optionType
参数确定其中选项数的内部对话框面板,messageType
参数确定要显示的图标。messageType
参数主要用于提供来自外观的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要在对话框中显示的对象;Component
对象呈现为Component
;String
对象呈现为字符串;其他对象将通过toString
方法被转换为String
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的整数:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
-
messageType
- 指定消息种类的整数,主要用于确定来自可插入外观的图标:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
返回:
- 指示用户所选选项的整数
-
showInternalConfirmDialog
public static int showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon)
-
调出一个带有指定图标的内部对话框面板,其中的选项数由
optionType
参数确定。messageType
参数主要用于提供来自外观的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者 parentComponent 不具有 Frame,则使用默认的Frame
-
message
- 要在对话框中显示的对象;Component
对象呈现为Component
;String
对象呈现为字符串;其他对象将通过toString
方法被转换为String
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的整数:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
。 -
messageType
- 指定消息种类的整数,主要用于确定来自可插入外观的图标:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 要在对话框中显示的图标
返回:
- 指示用户所选选项的整数
-
showInternalOptionDialog
public static int showInternalOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue)
-
调出一个带有指定图标的内部对话框面板,其中的初始选择由
initialValue
参数确定,选项数由optionType
参数确定。如果
optionType
为YES_NO_OPTION
或者YES_NO_CANCEL_OPTION
和options
参数为null
,则由外观提供选项。messageType
参数主要用于提供来自外观的默认图标。 -
-
-
参数:
-
parentComponent
- 确定在其中显示对话框的Frame
;如果为null
或者parentComponent
不具有Frame
,则使用默认的Frame
-
message
- 要在对话框中显示的对象;Component
对象呈现为Component
;String
对象呈现为字符串。其他对象通过toString
方法被转换为String
-
title
- 对话框的标题字符串 -
optionType
- 指定可用于对话框的选项的整数:YES_NO_OPTION
或YES_NO_CANCEL_OPTION
-
messageType
- 指定消息种类的整数;主要用于确定来自可插入外观的图标:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 在对话框中显示的图标 -
options
- 指示用户可能选择的对象组成的数组;如果对象是组件,则可以正确呈现;非String
对象使用其toString
方法呈现;如果此参数为null
,则由外观确定选项 -
initialValue
- 表示对话框的默认选择的对象;只有在使用options
时才有意义;可以为null
返回:
-
指示用户所选选项的整数;如果用户关闭了对话框,则返回
CLOSED_OPTION
-
showInternalInputDialog
public static String showInternalInputDialog(Component parentComponent, Object message)
-
显示请求用户输入内容的内部问题消息对话框,它以
parentComponent
为父级。该对话框显示于Component
的窗体中,通常位于Component
之下。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
-
showInternalInputDialog
public static String showInternalInputDialog(Component parentComponent, Object message, String title, int messageType)
-
显示请求用户提供输入的内部对话框,该对话框的标题为
title
,消息类型为messageType
,并以parentComponent
为父级。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
-
title
- 要在对话框的标题栏中显示的String
-
messageType
- 要显示的消息类型:ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE 或 PLAIN_MESSAGE
-
showInternalInputDialog
public static Object showInternalInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue)
-
提示用户在可以指定初始选择、可能选择及其他所有选项的模块化的内部对话框中输入内容。用户可以从
selectionValues
中进行选择,其中null
表示用户可以输入想输入的任何内容,通常依靠JTextField
来实现。initialSelectionValue
是用于提示用户的初始值。任由 UI 决定如何最好的表示selectionValues
,但通常情况下将使用JComboBox
、JList
或JTextField
。 -
-
-
参数:
-
parentComponent
- 对话框的父Component
-
message
- 要显示的Object
-
title
- 要在对话框的标题栏中显示的String
-
messageType
- 要显示的消息类型:ERROR_MESSAGE
、INFORMATION_MESSAGE
、WARNING_MESSAGE
、QUESTION_MESSAGE
或PLAIN_MESSAGE
-
icon
- 要显示的Icon
图像 -
selectionValues
- 给出可能选择的Object
数组 -
initialSelectionValue
- 用于初始化输入字段的值
返回:
-
用户输入;返回
null
意味着用户取消了输入
-
自己用到了显示消息和带有确认 取消按钮的对话框
if(newpass.equals(""))
{
JOptionPane.showMessageDialog(null,"字符串不能为空!","提示信息",JOptionPane.INFORMATION_MESSAGE);//显示信息
return;
}else if(!newpass.equals(cofpass))
{
JOptionPane.showMessageDialog(null,"字符串不一致!","错误提示",JOptionPane.ERROR_MESSAGE);//显示信息
return;
}
Object[] options = {"确定","取消"};
int response=JOptionPane.showOptionDialog(null, "确定执行后面的操作?", "请选择",JOptionPane.YES_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]);//给出选择项,不同的选择将执行不同的功能
if(response!=0)
{
JOptionPane.showMessageDialog(null,"您取消了后面的操作 !","提示信息",2);
return;
}
记录一下,以后要是有人遇到我这样的问题,应该就能在这里找到满意的答案了吧,希望,呵呵~~~~~~