1、创建文件选择器 JFileChooser

2、设置选择模式 setFileSelectionMode(int mode)

JFileChooser.FILES_ONLY 只能选择文件(默认)

JFileChooser.DIRECTORIES_ONLY 只能选择文件夹

JFileChooser.FILES_AND_DIRECTORIES 可以选择文件和文件夹

3、文件的单选、多选 setMultiSelectionEnable(boolean b)

true 多选

false 单选(默认)

4、显示对话框 showOpenDialog(c),c是窗体顶级容器Container c

文件过滤】如图像、音频、文档等类型。抽象类FileFilter,具体类FileNameExtensionFilter

FileNameExtensionFilter(String 文件类型描述信息,String 文件类型...)

例如:FileFilter filter=new FileNameExtensionFilter("图像文件","JPG","PNG","GIF");//java只支持这三种图片格式

fileChooser.setFileFilter(filter);//文件选择器添加过滤器

import javax.swing.*;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File; public class Demo extends JFrame {
public Demo() {
setTitle("文件选择对话框");
setBounds(100, 100, 400, 100);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setLayout(new FlowLayout());//设置容器为流布局,防止后控件覆盖前控件 JLabel label=new JLabel("文件:");
c.add(label); JTextField textField=new JTextField();
textField.setColumns(20);//文本框宽度
c.add(textField); JButton button=new JButton("上传");
c.add(button);
/*单击“上传”,弹出文件选择器(文件选择窗口),单击“打开”,被选中的文件路径显示在文本框中*/
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser=new JFileChooser();//文件选择器
fileChooser.setMultiSelectionEnabled(true);//是否可以多选文件
//筛选结果为文件夹和图片文件
FileFilter fileFilter=new FileNameExtensionFilter("图片","jpg","png","gif");//过滤器
fileChooser.setFileFilter(fileFilter);//设置选择器的过滤器
int i=fileChooser.showOpenDialog(c);//在容器中显示文件选择器
if (i==JFileChooser.APPROVE_OPTION){//如果在选择器中单击“打开”
File file=fileChooser.getSelectedFile();//获取选择器中选中的文件
textField.setText(file.getAbsolutePath());//文本框中显示绝对路径
}
}
});
} public static void main(String[] args) {
Demo frame = new Demo();
frame.setVisible(true);
}
}

高级组件——文件选择器JFileChooser的更多相关文章

  1. Java文件选择对话框(文件选择器JFileChooser)的使用:以一个文件加密器为例

    文件加密器,操作过程肯定涉及到文件选择器的使用,所以这里以文件加密器为例.下例为我自己写的一个文件加密器,没什么特别的加密算法,只为演示文件选择器JFileChooser的使用. 加密器界面如图: 项 ...

  2. JavaSwing文件选择器 JFileChooser的使用

    先看效果吧! 说明:选择文件或者文件夹.本例子就直接在控制台输出文件或者文件夹的路径.实际开发中,就可以将文件或文件夹的路径封装为File的实例来使用了. package test; import j ...

  3. JAVA GUI学习 - JFileChooser文件选择器组件学习:未包括JFileChooser系统类学习

    public class JFileChooserKnow { /** * @param args */ public static void main(String[] args) { // TOD ...

  4. Ext.js高级组件

    第二章:Ext.js高级组件 grid组件 普通方式 表格面板类Ext.grid.Panel xtype(别名):gridpanel.grid title标题.renderTo渲染至.width宽.h ...

  5. Ext JS 6学习文档-第6章-高级组件

    Ext JS 6学习文档-第6章-高级组件 高级组件 本章涵盖了高级组件,比如 tree 和 data view.它将为读者呈现一个示例项目为 图片浏览器,它使用 tree 和 data view 组 ...

  6. java 图形化工具Swing 颜色文件选择器 ;JColorChooser;JFileChoose

    使用JColorChooser: JColorChooser用于创建颜色选择器对话框,该类的用法非常简单,该类主要提供了如下两个静态方法: (1),showDialog(Component compo ...

  7. android文件选择器、仿淘宝编辑页面、新手引导层等源码

    Android精选源码 单片机和安卓应用,传感器 文件选择器 android滑动选择的尺子view源码 android视频录制 视频压缩的源码 仿今日头条顶部导航指示器源码 Android框架+常用控 ...

  8. java:工具(汉语转拼音,压缩包,EXCEL,JFrame窗口和文件选择器,SFTP上传下载,FTP工具类,SSH)

    1.汉语转拼音: import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.format.HanyuP ...

  9. UI高级组件

    今天继续学习UI高级组件 网格视图 GridView 用GridView标签添加,显示网格视图,需要用到适配器,共有四种适配器 ArrayAdapter,SmipleAdapter,SmipleCou ...

随机推荐

  1. Delphi处理数据网格DBGrid的编辑框 获取还没有提交到数据集的字段文本

    //fromhttp://kingron.myetang.com/zsfunc12.htm (*//标题:处理数据网格的编辑框说明:示例添加焦点颜色;获取还没有提交到数据集的字段文本设计:Zswang ...

  2. vue事件綁定

    事件綁定可以是一個句子,一個函數名稱,也可以是一個函數. 事件修飾符,按鍵修飾符.

  3. Hack You CTF 2014: NotEasyTask

    exe文件,运行后闪退,peid查一下,发现是是c#写的 Reflector打开 找到Main: private static void Main(string[] args) { string ho ...

  4. hdu—3861(tarjan+二分图)

    题意:给你n个城市,每个城市之间有一条有向边,将城市划分为几个区域,问你最小的划分方法, 划分规则为:能相互到达的放在一个区域:然后区域内的a,b两点肯定存在某种方式,使得a能到b或者b能到a(注意, ...

  5. TP5.x——打印SQL语句

    操作 使用fetchSql,然后sql就会只输出sql语句而不执行 var_dump(Db::name('user')->where(array('id'=>$this->_uid, ...

  6. 查询SQLSERVER中系统表结构

    Declare @TableName Varchar(20); SET @TableName='B_SupplierDA'; --SELECT TE.字段名+',' --FROM ( SELECT ( ...

  7. 一:Newtonsoft.Json 支持序列化与反序列化的.net 对象类型;

    导航目录: Newtonsoft.Json 概述 一:Newtonsoft.Json 支持序列化与反序列化的.net 对象类型:    二:C#对象.集合.DataTable与Json内容互转示例: ...

  8. 数字平滑 前端插件JS&CSS库

    CDN DEMO 拷贝可用: <!DOCTYPE html> <link rel="stylesheet" href="https://cdn.boot ...

  9. jsp配置

    jsp.server.xml <Host name="localhost" appBase="webapps" unpackWARs="true ...

  10. 【刷题】BZOJ 1413 [ZJOI2009]取石子游戏

    Description 在研究过Nim游戏及各种变种之后,Orez又发现了一种全新的取石子游戏,这个游戏是这样的: 有n堆石子,将这n堆石子摆成一排.游戏由两个人进行,两人轮流操作,每次操作者都可以从 ...