java中JOptionPane类的四种对话框简单应用

JOptionPane类



1、属于javax.swing 包。

2、功能:定制四种不同种类的标准对话框。
ConfirmDialog 确认对话框。提出问题,然后由用户自己来确认(按"Yes"或"No"按钮)
InputDialog 提示输入文本
MessageDialog 显示信息
OptionDialog 组合其它三个对话框类型。

3、这四个对话框可以采用showXXXDialog()来显示。如:
showConfirmDialog() 显示确认对话框、
showInputDialog() 显示输入文本对话框、
showMessageDialog() 显示信息对话框、

showOptionDialog() 显示选择性的对话框。

补充:上面的四种对话框还有相应的内部对话框

showInternalConfirmDialog()

showInternalInputDialog()

showInternalMessageDialog()

showInternalOptionDialog()这四种对话框的显示的时候ParentComponent不可设置为null,否则会抛出异常的!



4、基本参数说明。  

想要显示上面几种对话框,只要知道这几种对话框对应的show函数中各个参数(下面几种基本参数和各个对话框的特殊参数)的用途就可以显示出一个你需要的对话框!!!


(1)ParentComponent:指示对话框的父窗口对象,一般为当前窗口。

也可以为null即采用缺省的Frame作为父窗口,此时对话框将设置在屏幕的正中。


 (2)message:指示要在对话框内显示的描述性的文字
 (3)String title:标题条文字串。
 (4)Component:在对话框内要显示的组件(如按钮)
 (5)Icon:在对话框内要显示的图标
 (6)messageType(图标):
ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、

QUESTION_MESSAGE、PLAIN_MESSAGE、

记不住?你有没有发现其实都是JoptionPlan.xxxMessage,所以我们可以利用IDEA的智能提示打个JoptionPlan.Message就可以了。如图:



 (7)optionType:对话框底部显示的按钮选项。

DEFAULT_OPTION、YES_NO_OPTION、YES_NO_CANCEL_OPTION、OK_CANCEL_OPTION。

记不住?看上面!



5、使用实例:

(1) 显示MessageDialog

无特殊参数。


JOptionPane.showMessageDialog( null , "要显示的信息内容" ,"标题" , JOptionPane.ERROR_MESSAGE) ;





(2) 显示ConfirmDialog

无特殊参数


JOptionPane.showConfirmDialog( null , "message" , "标题", OptionPane.YES_NO_OPTION ) ;





(3) 显示OptionDialog:

特殊参数:object[] options ; object initialValue.在optionDialog中前面基本参数中的optionType已经成了一个摆设。因为option按钮已经不由它决定了,而是由object[]决定。initialValue决定了default option。同时该对话框的show函数无重载只有一个。


该种对话框可以由用户自己来设置各个按钮的个数并返回用户点击各个按钮的序号( 从0开始 计数)
Object[] options = {"查询","存款","取款","退出"};
int response=JOptionPane.showOptionDialog ( null, " 选择业务类型","ATM 取款机",JOptionPane.YES_OPTION ,JOptionPane.PLAIN_MESSAGE,
null, options, options[0] ) ;

if (response == 0)
{JOptionPane.showMessageDialog(null,"您按下了查询按钮");}
else if(response == 1)
{JOptionPane.showMessageDialog(null,"您按下了存款按钮");}
else if(response == 2)
{JOptionPane.showMessageDialog(null,"您按下了取款按钮");}
else if(response == 3)

{JOptionPane.showMessageDialog(null,"您按下了退出按钮");}


(4)显示InputDialog



(4.1) 显示InputDialog 以便让用户进行输入


String inputValue = JOptionPane.showInputDialog("Please input a value");

(4.2) 显示InputDialog 以便让用户进行选择地输入
Object[] possibleValues = { "First", "Second", "Third" } ;
//用户的选择项目
Object selectedValue = JOptionPane.showInputDialog(null,
"Choose one", "Input", JOptionPane.INFORMATION_MESSAGE ,
null, possibleValues , possibleValues[0]);
setTitle (" 您按下了 " + (String)selectedValue+"项目") ;}