4.5 对话框
1 2 3 “对话框”与“窗口” 的区别: “对话框”是不能自动实现菜单的容器类; “对话框”有模式(model)和非模式两种,模式对话框只让应用程序响应当前对话框内的事件,而不能响应窗体中的事件;非模式对话框可以响应窗体中的事件。 3 “对话框”依赖于其他窗口,当所依赖的窗口最小化时,对话框自动消失;当其所依赖的窗口恢复时,对话框也自动恢复; 2 “对话框”是不能自动实现菜单的容器类; 1
Dialog、JDialog——通用对话框 FileDialog、JFileChooser——文件对话框 JColorChooser——颜色对话框 JOptionPane——消息对话框、确认对话框、输出对话框
1 2 4.5.1 对话框类 (Dialog、JDialog ) 对话框组件的创建 Dialog(Frame,boolean)——以指定父窗体和指定模式创建对话框 单击此处添加段落文字内容 1 Dialog(Frame,String,boolean)——以指定父窗体、指定标题和指定模式创建对话框 单击此处添加段落文字内容 2 boolean isModel( ) 获取对话框的模式,true=模式 boolean isResizable( ) 如果对话框可变大小,返回true void setTitle(String ) 设置对话框的标题 String getTitle( ) 获得对话框的标题 String paramString( ) 返回对话框的参数字符串 void setSize( ) 设置对话框的大小 void setVisible( ) 显示或隐藏对话框
2 1 3 4.5.2 文件对话框(FileDialog、JFileChooser) 文件对话框的创建(FileDialog) FileDialog (Frame,String,int) ——创建指定父窗体、标题和“打开方式”的对话框。 当“打开方式”为FileDialog.LOAD时即打开文件对话框,当“打开方式”为FileDialog.SAVE时即保存文件对话框。 3 FileDialog (Frame,String) ——创建指定父窗体和标题的对话框 2 FileDialog (Frame) ——创建指定父窗体的对话框 1
文件对话框的创建(JFileChooser) 4.5.2 文件对话框(FileDialog、JFileChooser) 文件对话框的创建(JFileChooser) 步骤一、创建JFileChooser类的对象 public JFileChooser() 步骤二、调用JFileChooser类的对象成员方法 public int showOpenDialog(Component parent) public int showSaveDialog(Component parent)
4.5.3 颜色对话框 颜色对话框的创建 可以用 javax. swing. JColorChooser类的静态方法来创建: public static Color showDialog( Component parentComponent, String title, Color initialColor) 例: Color newColor=JColorChooser.showDialog(this,"选择颜色", Color.red);
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) 以 JOptionPane类的静态方法showMessageDialog()为例来描述一致的模式: public static void showMessageDialog( Component parentComponent, String message, String title, int messageType, Icon icon, Object[] options, Object initialValue)
(1) 消息对话框JOptionPane.showMessageDialog() 消息对话框的信息类型选项 PLAIN_MESSAGE 不包括任何图标 WARNING_MESSAGE 包括一个警告图标 QUESTION_MESSAGE 包括一个问题图标 INFORMATIN_MESSAGE 包括一个信息图标 ERROR_MESSAGE 包括一个出错图标
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) JOptionPane.showMessageDialog (null,"没有图标的提示!", "信息", JOptionPane.PLAIN_MESSAGE );
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) JOptionPane.showMessageDialog (null, "警告对话框!", "警告", JOptionPane.WARNING_MESSAGE );
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) JOptionPane.showMessageDialog (null, "信息消息。",“提示", JOptionPane.INFORMATION_MESSAGE );
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) JOptionPane.showMessageDialog (null, "错误消息!", "错误",JOptionPane.ERROR_MESSAGE );
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) JOptionPane.showMessageDialog (null, “疑问消息!”, “疑问",JOptionPane. QUESTION_MESSAGE );
(2) 确认对话框JOptionPane.showConfirmDialog() 确认对话框的类型参数取值 对话框可能的返回值 YES_OPTION NO_OPTION CANCEL_OPTION OK_OPTION CLOSED_OPTION DEFAULT_OPTION YES_NO_OPTION YES_NO_CANCEL_OPTION OK_CANCEL_OPTION
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) int n = JOptionPane.showConfirmDialog (this, "你喜欢蓝色吗?", "询问", JOptionPane.YES_NO_OPTION );
4.5.4 消息对话框、输入对话框、确认对话框(JOptionPane) (3) 输入对话框对话框JOptionPane.showInputDialog() String name=JOptionPane. showInputDialog(null, “请输入你的名字”, “输入对话框", JOptionPane.INFORMATION_MESSAGE );