`

文件选择器演示程序

阅读更多
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->  1 ////////////////////////////////////////////////////////////////////////////////////////////
 2 //
 3 //  @name JFileChooserDemo.java
 4 //
 5 //  @discription 文件选择器演示程序
 6 //
 7 //  @author hcm
 8 //
 9 //  @date 2006-12
10 //
11 ////////////////////////////////////////////////////////////////////////////////////////////
12 
13 import java.awt.*;
14 import java.awt.event.*;
15 import javax.swing.*;
16 import java.io.*;
17 
18 //文件选择器演示
19 
20 public class JFileChooserDemo extends JFrame {
21     private JFileChooser chooser;  //文件选择器
22     private JButton button;  //选择文件按钮
23     private JComboBox comboBox;  //用于设定文件对话框作用(打开还是保存文件)
24     
25     public JFileChooserDemo() {
26         super("JFileChooser 演示");  //调用父类构造函数
27         Container contentPane = getContentPane();  //得到容器
28         contentPane.setLayout(new FlowLayout());  //设置布局管理器为Flowlayout
29         chooser=new JFileChooser();  //初始化文件选择器
30         button = new JButton("选择文件");  //初始化按钮
31         comboBox=new JComboBox();  //初始化组合框
32         comboBox.addItem("打开");  //增加组合框列表内容
33         comboBox.addItem("保存");
34         contentPane.add(comboBox);  //增加组件到容器
35         contentPane.add(button);
36         
37         button.addActionListener(new ActionListener() {  //按钮事件处理
38             public void actionPerformed(ActionEvent e) {
39                 int state;  //文件选择器返回状态
40                 //  chooser.removeChoosableFileFilter(chooser.getAcceptAllFileFilter());  //移去所有文件过滤器
41                 // chooser.addChoosableFileFilter(new MyFileFilter("gif","图像文件"));   //增加文件过滤器,接爱gif文件
42                 
43                 if (comboBox.getSelectedIndex()==0)  //组合框为"打开"
44                     
45                 {
46                     System.out.println("~~~~~~~~~~~~~"+0);
47                     state=chooser.showOpenDialog(null);   //显示打开文件对话框
48                     System.out.println("zhuangtai===="+state);
49                 } else {
50                     System.out.println("~~~~~~~~~~~~~"+1);
51                     state=chooser.showSaveDialog(null);  //显示保存文件对话框
52                 }
53                 
54                 File file = chooser.getSelectedFile();  //得到选择的文件
55                 if(true == ( file != null) ) {
56                     System.out.println(file.toString());
57                 }
58                 if(file != null && state == JFileChooser.APPROVE_OPTION) {  //选择了文件并点击了打开可保存按钮
59                     JOptionPane.showMessageDialog(null, file.getPath()); //显示提示信息
60                 } else if(state == JFileChooser.CANCEL_OPTION) {  //点击了撤销按钮
61                     JOptionPane.showMessageDialog(null"退出!");  //显示提示信息
62                 } else if(state == JFileChooser.ERROR_OPTION) {
63                     JOptionPane.showMessageDialog(null"错误!");  //显示提示信息
64                 }
65             }
66         });
67         
68         this.setSize(200,100);  //设置窗口大小
69         this.setVisible(true);  //设置窗口可见
70         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //关闭窗口时退出程序
71     }
72     
73     public static void main(String args[]) {
74         new JFileChooserDemo();
75     }
76 }
77 

再加个过滤器:
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--> 1 import java.io.File;
 2 import javax.swing.filechooser.FileFilter;
 3 
 4 //文件过滤器
 5 
 6 public class MyFileFilter extends FileFilter
 7 {
 8     
 9     String ends;  //文件后缀
10     String description;  //文件描述文字
11     
12     public MyFileFilter (String ends, String description)
13     { //构造函数
14         this.ends = ends;  //设置文件后缀
15         this.description=description;  //设置文件描述文字
16     }
17     
18     public boolean accept (File file)
19     {  //重载FileFilter中的accept方法
20         if (file.isDirectory ())  //如果是目录,则返回true
21             return true;
22         String fileName = file.getName ();  //得到文件名称
23         if (fileName.toUpperCase ().endsWith (ends.toUpperCase ()))  //把文件后缀与可接受后缀转成大写后比较
24             return true;
25         else
26             return false;
27     }
28     
29     public String getDescription ()
30     {  //返回文件描述文字
31         return description;
32     }
33 }

分享到:
评论

相关推荐

    opencv直线圆的检测

    它包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。 HoughTrans.h 这是应用程序的主要头文件。它包括其他项目特定的头文件(包括 Resource.h),并声明 ...

    nextcloud-webdav-filepicker::open_file_folder:文件选择器可与Nextcloud文件进行交互

    演示版使用该组件的Vue应用示例使用文件选择器包装器的简单脚本示例了解如何传递GET参数 :play_button: 介绍 特征该文件选择器能够选择多个文件,然后: 得到他们的路将它们下载为文件生成WebDav下载链接帮助您轻松...

    Jquery颜色选择器ColorPicker实现代码

    在CMS中通常都有给标题添加颜色的功能,但一般都比较简单,颜色支持也少,这里我要分享一个自己修改的颜色选择器。... 相关文件和演示 ColorPicker选择器含演示程序下载:点击下载 ColorPicker演示:点击查看

    MUR-100读卡器驱动程序forwin7

    MUR-100读卡器驱动程序是一款可以有效解决MUR-100读卡器出现的一些问题的...使用方法 1、在启动本系统之后,首先选择当前所使用的读卡器 2、然后再选择文件菜单中的连接选项进行连接 3、在连接上以后,你可以点击主界面

    Axure谷歌浏览器Chrome扩展程序下载及安装方法

    Axure谷歌浏览器Chrome扩展程序使用说明:打开谷歌内核的浏览器,在浏览器中地址栏中输入chrome://extensions/ 或者点击浏览器的右上角选择更多工具-&gt;扩展程序,将下载到本地的.crx文件拖入到扩展程序中,点击确定...

    AndroidSIMFileReader:一个演示在Android中读取SIM文件的应用程序

    这是一个演示在Android中读取SIM文件的应用程序,有多种方法。 它们是:使用 SEEK API,将新的服务实现注入电话进程,以及 AT/Hayes 命令。 该应用程序使用透明地找到一个工作接口来进行 SIM I/O。 定位和解析 SIM ...

    vs2010聊天程序

    它包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。 NetChatClient.vcxproj.filters 这是使用“应用程序向导”生成的 VC++ 项目筛选器文件。 它包含有关...

    8086/8088汇编语言程序设计教程

    第一部分是基础部分,以8086/8088为背景,以DOS和PC兼容机为软硬件平台,以MASM和TASM为汇编器,介绍汇编语言的有关概念,讲解汇编语言程序设计技术。第二部分是提高部分,以80386为背景,以新一代微处理器Pentium为...

    Java实用程序设计100例(1)

    实例1 产生自己的控件 实例2 控件的排布示例 实例3 控件的相互控制与消息传递 实例4 彩色列表框 实例5 圆形的按钮 ...实例7 虚线与实线 实例8 显示多种字体 ...实例22 文件选择器 实例23 自定义光标 实例24 HTML浏览器

    C# 3.0完全自学宝典 (F)

    FileViewer 演示文件查看器WPF窗体应用程序实例 第10章(\ch10) 示例描述:学习.NET中的文件操作。 BinaryFile 演示二进制文件读写实例 TextFile 演示文本文件读写实例 CopyFile 演示复制文件实例 Create...

    weixin047校园二手交易平台的小程序+ssm(源码+部署说明+演示视频+源码介绍+lw).rar

    演示视频:资源中包含了一个演示视频,展示了该小程序的实际运行情况,帮助用户了解其功能和操作流程。 源码介绍:资源中包含了完整的源码,包括前端页面、后端控制器、服务层、数据访问层等各个部分的代码,方便...

    Java复制文件

    摘要:Java源码,文件操作,复制文件 Java复制文件,使用Java语言编写拷贝文件的演示小程序,附源代码,注释挺全的,通过本源码你可以学习一下Java对文件的事件处理、取得目录内容的事件处理、如何弹出文件选择器,并...

    80x86汇编语言程序设计教程

    第一部分是基础部分,以8086/8088为背景,以DOS和PC兼容机为软硬件平台,以MASM和TASM为汇编器,介绍汇编语言的有关概念,讲解汇编语言程序设计技术。第二部分是提高部分,以80386为背景,以新一代微处理器Pentium为...

    java源码包27个实例源码Java源码的仿QQ聊天程序Java学生信息管理系统Java写的天气预报软件

    Java文件选择器源代码.rar Java文字跑马灯与信息窗口.rar Java游戏中斜视角编辑器及引擎源代码.rar Java游戏使命的召唤源码.rar Java游戏沙丘城堡源代码.rar Java源码的仿QQ聊天程序.rar Java用GZIP压缩解压文件.rar...

    Windows 程序设计(第5版)(上、下册)--详细书签版

    在《Window程序设计》(第5版)中,这位杰出的“Windows先锋奖”(Windows Pioneer Award)获得者根据最新的Windows操作系统权威技术修订了他的经典著作——再一次演示了基本的Win32程序设计的API核心内容。...

    桃源企业文件管理系统v3.2

    8、文件回收站功能:前台用户操作中删除的目录或文件均会被转移到回收站,在这里做最后确认后可以删除或清空文件,也可以还原选择的目录或文件,避免误操作损失。 9、公共空间:由后台管理员启用并设置好公共空间各...

    onedrive-texteditor-js:简单的单页JavaScript应用程序,用于编辑文本文件

    它演示了以下内容: 使用OneDrive文件选择器从OneDrive个人版和OneDrive for Business中选择文件。 从OneDrive下载文件的内容将文件保存回OneDrive 使用Microsoft Graph检索共享链接它被编写为单页JavaScript应用...

    Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好

    号,进入资源选择器,但现在这里面是空的。所以下面我 们需要给该工程添加外部资源。 7.添加资源有两种方法。一种是直接添加系统提供的资源文件,然后选择所需图 标。另一种是自己写资源文件。我们主要介绍第一种。...

    java源码包---java 源码 大量 实例

     使用Java语言编写的一款用于反映颜色变化的面板,也就是大家熟悉的颜色调色板演示程序。原理是初始化颜色选择按钮,然后为颜色选择按钮增加事件处理事件,最后实例化颜色选择器。 Java二进制IO类与文件复制操作...

    nfc-ndef-tag-reader:适用于 Windows Phone 8 的简单 NFC 标签读取器应用程序。此示例应用程序演示了如何使用 Proximity API 读取符合 NFC 数据交换格式 (NDEF) 的标签

    NFC NDEF 标签阅读器 适用于 Windows Phone 8 的简单 NFC 标签读取器应用程序。此示例应用程序演示了如何使用 Proximity API 读取符合 NFC 数据交换格式 (NDEF) 的标签... 打开SLN文件:文件&gt;打开项目,选择文件NfcNde

Global site tag (gtag.js) - Google Analytics