为什么JOptionPane.showInputDialog不需要父组件参数,但JOptionPane.showConfirmDialog呢?

时间:2012-03-06 03:35:20

标签: java swing joptionpane

JOptionPane.showInputDialog有一个不需要父组件参数的表单。 JOptionPane.showConfirmDialog的确如此。这是为什么?

3 个答案:

答案 0 :(得分:4)

  

JOptionPane.showInputDialog有一个不需要父组件参数的表单。 JOptionPane.showConfirmDialog的确如此。

来自showConfirmDialog(Component parentComponent,Object message)

  

parentComponent - 确定显示对话框的框架; 如果为null,或者如果parentComponent没有框架,则使用默认框架

所以..

  

为什么会这样?

不是。

答案 1 :(得分:1)

因为有时程序员会希望允许用户引用父组件来获取showInputDialog的某种值。但是,showConfirmDialog只是用户读取然后丢弃的消息。

答案 2 :(得分:0)

我们显示确认对话框,以获取用户对父窗口操作的确认。 例如:用户试图关闭主窗口,询问他是否真的要关闭它?或按删除按钮将要求确认删除操作

简而言之,通过显示确认对话框,我们让用户了解他想要在父窗口上执行的任何关键操作,并要求他确认相同的操作。

输入对话框通常不是这种情况!