请问各位大大们,javax.swing.JOptionPane具体应该怎么使用?? ?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 类 JOptionPanejava.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JOptionPane所有已实现的接口: ImageObserver, MenuContainer, Serializable, Accessible --------------------------------------------------------------------------------public class JOptionPaneextends JComponentimplements AccessibleJOptionPane 有助于方便地弹出要求用户提供值或向其发出通知的标准对话框。有关使用 JOptionPane 的信息,请参见《The Java Tutorial》中的 How to Make Dialogs 一节。 虽然由于方法数多使 JOptionPane 类可能显得复杂,但几乎所有此类的使用都是对下列静态 showXxxDialog 方法之一的单行调用: 方法名 描述 showConfirmDialog 询问一个确认问题,如 yes/no/cancel。 showInputDialog 提示要求某些输入。 showMessageDialog 告知用户某事已发生。 showOptionDialog 上述三项的大统一 (Grand Unification)。 所有这些方法还可能以 showInternalXXX 风格出现,该风格使用内部窗体来保存对话框(请参见 JInternalFrame)。此外还定义了多种便捷方法,这些方法重载那些基本方法,使用不同的参数列表。 所有对话框都是有模式的。在用户交互完成之前,每个 showXxxDialog 方法都一直阻塞当前线程。 图标 消息 输入值 选项按钮 这些对话框的基本外形通常与右图类似,尽管各种外观从根本上决定着最后结果。尤其是,外观可以调整布局以适应选项窗格的 ComponentOrientation 属性。参数:这些方法的参数遵守一致的模式: parentComponent定义作为此对话框的父对话框的 Component。通过两种方式使用此参数:包含它的 Frame 可以用作对话框的父 Frame,在对话框的位置使用其屏幕坐标。一般情况下,将对话框紧靠组件置于其之下。此参数可以为 null,在这种情况下,默认的 Frame 用作父级,并且对话框将居中位于屏幕上(取决于 L&F)。 message要置于对话框中的描述消息。在最常见的应用中,message 就是一个 String 或 String 常量。不过,此参数的类型实际上是 Object。其解释依赖于其类型: Object[]对象数组被解释为在纵向堆栈中排列的一系列 message(每个对象一个)。解释是递归式的,即根据其类型解释数组中的每个对象。 Component该 Component 在对话框中显示。 Icon该 Icon 被包装在 JLabel 中并在对话框中显示。 其他该对象通过调用其 toString 方法被转换为 String。结果被包装在 JLabel 中显示。 messageType定义 message 的样式。外观管理器布置的对话框可能因此值而异,并且往往提供默认图标。可能的值为: ERROR_MESSAGE INFORMATION_MESSAGE WARNING_MESSAGE QUESTION_MESSAGE PLAIN_MESSAGE optionType定义在对话框的底部显示的选项按钮的集合: DEFAULT_OPTION YES_NO_OPTION YES_NO_CANCEL_OPTION OK_CANCEL_OPTION 用户并非仅限于使用选项按钮的此集合。使用 options 参数可以提供想使用的任何按钮。 options对将在对话框底部显示的选项按钮集合的更详细描述。options 参数的常规值是 String 数组,但是参数类型是 Object 数组。根据对象的以下类型为每个对象创建一个按钮: Component该组件被直接添加到按钮行中。 Icon创建的 JButton 以此图标作为其标签。 其他该 Object 通过使用其 toString 方法转换为字符串,并使用该结果作为 JButton 的标签。 icon要置于对话框中的装饰性图标。图标的默认值由 messageType 参数确定。 title对话框的标题。 initialValue默认选择(输入值)。 当选择更改时,调用生成 PropertyChangeEvent 的 setValue 方法。 如果已为所有输入 setWantsInput 配置了 JOptionPane,则还可以侦听 bound 属性 JOptionPane.INPUT_VALUE_PROPERTY,以确定何时用户输入或选择了值。 当其中一个 showXxxDialog 方法返回整数时,可能的值为: YES_OPTION NO_OPTION CANCEL_OPTION OK_OPTION CLOSED_OPTION 示例: 显示一个错误对话框,该对话框显示的 message 为 'alert': JOptionPane.showMessageDialog(null, "alert", "alert", JOptionPane.ERROR_MESSAGE);显示一个内部信息对话框,其 message 为 'information': JOptionPane.showInternalMessageDialog(frame, "information","information", JOptionPane.INFORMATION_MESSAGE);显示一个信息面板,其 options 为 "yes/no",message 为 'choose one': JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION);显示一个内部信息对话框,其 options 为 "yes/no/cancel",message 为 'please choose one',并具有 title 信息: JOptionPane.showInternalConfirmDialog(frame, "please choose one", "information",JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);显示一个警告对话框,其 options 为 OK、CANCEL,title 为 'Warning',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]);显示一个要求用户键入 String 的对话框: String inputValue = JOptionPane.showInputDialog("Please input a value");显示一个要求用户选择 String 的对话框: Object[] possibleValues = { "First", "Second", "Third" };Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input",JOptionPane.INFORMATION_MESSAGE, null,possibleValues, possibleValues[0]);直接使用:要直接创建和使用 JOptionPane,标准模式大致如下: 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; haha...you should ask what the api is using for ....suggest lz first look for api for help. 楼上的发了疯这么用JOptionPane.showMessageDialog(this,"你的提示语");还有其它提示种类,参看楼上 java构造函数问题 帮我解决xalan转换的问题,非常谢谢大家 求大虾分析下现在java程序员需求情况 怎么在一个JButton上画一个三角形 一道面试题<谈谈集合中Map映射认识> 三个变量a,b,c。如果a.equals(b) 同时 b.equals(c)返回都是True,那么是否总是c.equals(a)? 编译通过,没有结果,请指教 ResultSet 在oracle中的问题? 关于类中类的方法调用 我图片怎么显示不出来啊,求各位大佬帮忙! main线程 不是说抽象类不能实例化吗?为什么这里可以。
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JOptionPane
所有已实现的接口:
ImageObserver, MenuContainer, Serializable, Accessible --------------------------------------------------------------------------------public class JOptionPaneextends JComponentimplements AccessibleJOptionPane 有助于方便地弹出要求用户提供值或向其发出通知的标准对话框。有关使用 JOptionPane 的信息,请参见《The Java Tutorial》中的 How to Make Dialogs 一节。 虽然由于方法数多使 JOptionPane 类可能显得复杂,但几乎所有此类的使用都是对下列静态 showXxxDialog 方法之一的单行调用: 方法名 描述
showConfirmDialog 询问一个确认问题,如 yes/no/cancel。
showInputDialog 提示要求某些输入。
showMessageDialog 告知用户某事已发生。
showOptionDialog 上述三项的大统一 (Grand Unification)。 所有这些方法还可能以 showInternalXXX 风格出现,该风格使用内部窗体来保存对话框(请参见 JInternalFrame)。此外还定义了多种便捷方法,这些方法重载那些基本方法,使用不同的参数列表。
所有对话框都是有模式的。在用户交互完成之前,每个 showXxxDialog 方法都一直阻塞当前线程。 图标 消息
输入值
选项按钮
这些对话框的基本外形通常与右图类似,尽管各种外观从根本上决定着最后结果。尤其是,外观可以调整布局以适应选项窗格的 ComponentOrientation 属性。
参数:
这些方法的参数遵守一致的模式: parentComponent
定义作为此对话框的父对话框的 Component。通过两种方式使用此参数:包含它的 Frame 可以用作对话框的父 Frame,在对话框的位置使用其屏幕坐标。一般情况下,将对话框紧靠组件置于其之下。此参数可以为 null,在这种情况下,默认的 Frame 用作父级,并且对话框将居中位于屏幕上(取决于 L&F)。
message
要置于对话框中的描述消息。在最常见的应用中,message 就是一个 String 或 String 常量。不过,此参数的类型实际上是 Object。其解释依赖于其类型:
Object[]
对象数组被解释为在纵向堆栈中排列的一系列 message(每个对象一个)。解释是递归式的,即根据其类型解释数组中的每个对象。
Component
该 Component 在对话框中显示。
Icon
该 Icon 被包装在 JLabel 中并在对话框中显示。
其他
该对象通过调用其 toString 方法被转换为 String。结果被包装在 JLabel 中显示。
messageType
定义 message 的样式。外观管理器布置的对话框可能因此值而异,并且往往提供默认图标。可能的值为:
ERROR_MESSAGE
INFORMATION_MESSAGE
WARNING_MESSAGE
QUESTION_MESSAGE
PLAIN_MESSAGE
optionType
定义在对话框的底部显示的选项按钮的集合:
DEFAULT_OPTION
YES_NO_OPTION
YES_NO_CANCEL_OPTION
OK_CANCEL_OPTION
用户并非仅限于使用选项按钮的此集合。使用 options 参数可以提供想使用的任何按钮。
options
对将在对话框底部显示的选项按钮集合的更详细描述。options 参数的常规值是 String 数组,但是参数类型是 Object 数组。根据对象的以下类型为每个对象创建一个按钮:
Component
该组件被直接添加到按钮行中。
Icon
创建的 JButton 以此图标作为其标签。
其他
该 Object 通过使用其 toString 方法转换为字符串,并使用该结果作为 JButton 的标签。
icon
要置于对话框中的装饰性图标。图标的默认值由 messageType 参数确定。
title
对话框的标题。
initialValue
默认选择(输入值)。
当选择更改时,调用生成 PropertyChangeEvent 的 setValue 方法。 如果已为所有输入 setWantsInput 配置了 JOptionPane,则还可以侦听 bound 属性 JOptionPane.INPUT_VALUE_PROPERTY,以确定何时用户输入或选择了值。 当其中一个 showXxxDialog 方法返回整数时,可能的值为: YES_OPTION
NO_OPTION
CANCEL_OPTION
OK_OPTION
CLOSED_OPTION
示例:
显示一个错误对话框,该对话框显示的 message 为 'alert':
JOptionPane.showMessageDialog(null, "alert", "alert", JOptionPane.ERROR_MESSAGE);显示一个内部信息对话框,其 message 为 'information':
JOptionPane.showInternalMessageDialog(frame, "information","information", JOptionPane.INFORMATION_MESSAGE);显示一个信息面板,其 options 为 "yes/no",message 为 'choose one':
JOptionPane.showConfirmDialog(null,
"choose one", "choose one", JOptionPane.YES_NO_OPTION);显示一个内部信息对话框,其 options 为 "yes/no/cancel",message 为 'please choose one',并具有 title 信息:
JOptionPane.showInternalConfirmDialog(frame,
"please choose one", "information",
JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);显示一个警告对话框,其 options 为 OK、CANCEL,title 为 'Warning',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]);显示一个要求用户键入 String 的对话框:
String inputValue = JOptionPane.showInputDialog("Please input a value");显示一个要求用户选择 String 的对话框:
Object[] possibleValues = { "First", "Second", "Third" };
Object selectedValue = JOptionPane.showInputDialog(null,
"Choose one", "Input",
JOptionPane.INFORMATION_MESSAGE, null,
possibleValues, possibleValues[0]);直接使用:
要直接创建和使用 JOptionPane,标准模式大致如下:
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;
you should ask what the api is using for ....
suggest lz first look for api for help.
这么用
JOptionPane.showMessageDialog(this,"你的提示语");
还有其它提示种类,参看楼上