日志二:GUI编程及文件对话框的使用
2015-07-05 17:29
513 查看
【目的】
1. 了解文件对话框的使用方法,熟悉GUI中事件驱动的核心步骤。
2. 了解GUI的图像显示的常用方式。
3. 完成实验六的内容。
【目标】
项目一:文件及选择
项目二:图片显示
项目三:实验六 图形用户界面
【方法与步骤】
1. 了解文件对话框的使用方法,熟悉GUI中事件驱动的核心步骤。
JFileChooser类中常用的构造方法:
JFileChooser() 构造一个指向用户默认目录的 JFileChooser。
JFileChooser(File currentDirectory) 使用给定的 File 作为路径来构造一个 JFileChooser。
setFileSelectionMode(int mode)设置 JFileChooser, 以允许用户只选择文件、只选择目录,或者可选择文件和目录。
mode参数:
FILES_AND_DIRECTORIES 指示显示文件和目录。
FILES_ONLY 指示仅显示文件。
DIRECTORIES_ONLY 指示仅显示目录。
showDialog(Component parent,String approveButtonText) 弹出具有自定义 approve 按钮的自定义文件选择器对话框。
showOpenDialog(Component parent) 弹出一个 "Open File" 文件选择器对话框。
showSaveDialog(Component parent) 弹出一个 "Save File" 文件选择器对话框。
setMultiSelectionEnabled(boolean b) 设置文件选择器,以允许选择多个文件。
getSelectedFiles() 如果将文件选择器设置为允许选择多个文件,则返回选中文件的列表(File[])。
getSelectedFile() 返回选中的文件。
老师介绍的一篇博文:/article/1752884.html,上面有“JFileChooser (Java Swing提供的文件选择对话框)”,的一些方法。
2. GUI事件模式驱动的步骤:
1)新建一个组件(如JButton)。
2)将该组件添加到相应的面板(如JPanel)。
3)注册监听器以监听事件源产生的事件(如通过ActionListener来响应用户点击按钮)。
4)定义处理事件的方法(如在ActionListener中的actionPerformed中定义相应方法)。
3. GUI的图像显示的常用方式
image = ImageIO.read(file); //读入图像到image
void setIcon(Icon image) //定义JLable将要显示的图标
4. 结合JFileChooser进行简单编程
老师给了我们一些代码,老师要求我们修改这些代码,实现以下功能。打开文件,实现显示下面的画面。我刚开始不理解老师的用意,一直不懂那个JFileChooser的使用,因为做“猜猜看”的游戏,需要用到这个功能,我开始研究,我就去理解了一下以下的代码,实现了打开文件,选择文件的功能。我慢慢的理解了JFileChooser选择文件,选择目录的路径要求。
【实验代码】
【实验结果】
【目的】
1. 了解文件对话框的使用方法,熟悉GUI中事件驱动的核心步骤。
2. 了解GUI的图像显示的常用方式。
3. 完成实验六的内容。
【目标】
项目一:文件及选择
项目二:图片显示
项目三:实验六 图形用户界面
【方法与步骤】
1. 了解文件对话框的使用方法,熟悉GUI中事件驱动的核心步骤。
JFileChooser类中常用的构造方法:
JFileChooser() 构造一个指向用户默认目录的 JFileChooser。
JFileChooser(File currentDirectory) 使用给定的 File 作为路径来构造一个 JFileChooser。
setFileSelectionMode(int mode)设置 JFileChooser, 以允许用户只选择文件、只选择目录,或者可选择文件和目录。
mode参数:
FILES_AND_DIRECTORIES 指示显示文件和目录。
FILES_ONLY 指示仅显示文件。
DIRECTORIES_ONLY 指示仅显示目录。
showDialog(Component parent,String approveButtonText) 弹出具有自定义 approve 按钮的自定义文件选择器对话框。
showOpenDialog(Component parent) 弹出一个 "Open File" 文件选择器对话框。
showSaveDialog(Component parent) 弹出一个 "Save File" 文件选择器对话框。
setMultiSelectionEnabled(boolean b) 设置文件选择器,以允许选择多个文件。
getSelectedFiles() 如果将文件选择器设置为允许选择多个文件,则返回选中文件的列表(File[])。
getSelectedFile() 返回选中的文件。
老师介绍的一篇博文:/article/1752884.html,上面有“JFileChooser (Java Swing提供的文件选择对话框)”,的一些方法。
2. GUI事件模式驱动的步骤:
1)新建一个组件(如JButton)。
2)将该组件添加到相应的面板(如JPanel)。
3)注册监听器以监听事件源产生的事件(如通过ActionListener来响应用户点击按钮)。
4)定义处理事件的方法(如在ActionListener中的actionPerformed中定义相应方法)。
3. GUI的图像显示的常用方式
image = ImageIO.read(file); //读入图像到image
void setIcon(Icon image) //定义JLable将要显示的图标
4. 结合JFileChooser进行简单编程
老师给了我们一些代码,老师要求我们修改这些代码,实现以下功能。打开文件,实现显示下面的画面。我刚开始不理解老师的用意,一直不懂那个JFileChooser的使用,因为做“猜猜看”的游戏,需要用到这个功能,我开始研究,我就去理解了一下以下的代码,实现了打开文件,选择文件的功能。我慢慢的理解了JFileChooser选择文件,选择目录的路径要求。
【实验代码】
package com.mxl.swing; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.JFileChooser; public class JFileChooserTest { public static final int APPROVE_OPTION = 0; private JLabel label=new JLabel("所选文件路径"); private JTextField jtf=new JTextField(25); private JButton button=new JButton("浏览"); public JFileChooserTest(){ JFrame jf=new JFrame("Java GUI"); JPanel panel=new JPanel(); panel.add(label); panel.add(jtf); panel.add(button); jf.add(panel); jf.pack(); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JFileChooser fc=new JFileChooser("E:\\"); int val=fc.showOpenDialog(null); //.showDialog(new JLabel(), "选择"); if(val==fc.APPROVE_OPTION){ jtf.setText(fc.getSelectedFile().toString()); }else{ jtf.setText("未选择文件"); } } }); } }
【实验结果】
相关文章推荐
- java 中的 String (to be continued)
- Ogre编程入门与进阶】第十七章 Ogre3D 和CEGUI 的结合
- LeetCode: Distinct Subsequences [115]
- UISearchBar控件-让我们来搞定!
- easyui中tree型控件不正常显示的处理方法
- UVA 1151 Buy or Build (MST最小生成树,kruscal,变形)
- 1.QT该容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等待
- UIPickerView学习笔记
- UITextField / UIButton / 回收键盘delegate
- UIButton和UISlider
- Scala 的Value Class 和 Universal Traits
- Implement Stack using Queues 用队列实现栈
- System.Web.UI.WebControls的Web服务器控件
- POJ 2593&&2479:Max Sequence
- POJ 2593&&2479:Max Sequence
- UIColor和UIImage转换
- iOS UICollectionView基础
- SequenceSum
- UVA 10420 List of Conquests
- IOS开发UI篇--一个可扩展性极强的树形控件