Swing中弹出对话框的几种方式
1个回答
展开全部
这些对话框都是模式对话框。
ConfirmDialog --- 确认对话框,提出问题,然后由用户自己来确认(按"Yes"或"No"按钮)
InputDialog --- 提示输入文本
MessageDialog --- 显示信息
OptionDialog -- 组合其它三个对话框类型。
这四个对话框可以采用showXXXDialog()来显示,如showConfirmDialog()显示确认对话框、 showInputDialog()显示输入文本对话框、showMessageDialog()显示信息对话框、showOptionDialog() 显示选择性的对话框。它们所使用的参数说明如下:
① ParentComponent:指示对话框的父窗口对象,一般为当前窗口。也可以为null即采用缺省的Frame作为父窗口,此时对话框将设置在屏幕的正中。
② message:指示要在对话框内显示的描述性的文字
③ String title:标题条文字串。
④ Component:在对话框内要显示的组件(如按钮)
⑤ Icon:在对话框内要显示的图标
⑥ messageType:一般可以为如下的值ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE、PLAIN_MESSAGE、
⑦ optionType:它决定在对话框的底部所要显示的按钮选项。一般可以为DEFAULT_OPTION、YES_NO_OPTION、YES_NO_CANCEL_OPTION、OK_CANCEL_OPTION。
使用实例:(1)显示MessageDialog
JOptionPane.showMessageDialog(null, "在对话框内显示的描述性的文字", "标题条文字串", JOptionPane.ERROR_MESSAGE);
(2)显示ConfirmDialogJava代码 JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION); (3)显示OptionDialog:该种对话框可以由用户自己来设置各个按钮的个数并返回用户点击各个按钮的序号(从0开始计数)
Java代码 Object[] options = {"确定","取消","帮助"}; int response=JOptionPane.showOptionDialog(this, "这是个选项对话框,用户可以选择自己的按钮的个数", "选项对话框标题",JOptionPane.YES_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]); if(response==0) { this.setTitle("您按下了第OK按钮 "); } else if(response==1) { this.setTitle("您按下了第Cancel按钮 "); } else if(response==2) { this.setTitle("您按下了第Help按钮 "); } (4)显示InputDialog 以便让用户进行输入
Java代码 String inputValue = JOptionPane.showInputDialog("Please input a value"); (5)显示InputDialog 以便让用户进行选择地输入
Java代码 Object[] possibleValues = { "First", "Second", "Third" }; //用户的选择项目 Object selectedValue = JOptionPane.showInputDialog(null, "Choose one","Input",JOptionPane.INFORMATION_MESSAGE, null, possibleValues,possibleValues[0]); setTitle("您按下了"+(String)selectedValue+"项目"); 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(每个对象一个)。解释是递归式的,即根据其类型解释数组中的每个对象。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询