`
zwm512327
  • 浏览: 56667 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

用Swing做的文件选择器

阅读更多
把我曾经遇到的一些问题跟大家分享下。好多问题教材上找不到答案,当时花费了好多时间,有些是网上查了好久查到的,有些是自己试了好久才明白的。

1)不管屏幕大小,始终把界面显示到屏幕固定比例的位置

2)文件选择器的使用,Java API上讲的太少了,就一个如何使文件选择器显示出来都困扰我很久,不知道大家刚接触时是否有同感。

3)事件处理怎么判断是哪个控件触发了事件。

4)选项卡的使用

5)滚动条的加入

6)鼠标左右键的区分

      (5)和(6)的问题本程序中不包含。以后补上。

      程序涉及内容包含选项卡布局,文件选择器及一些控件,还包含最简单的事件处理。抛砖引玉,希望对刚学swing及事件驱动的人有所帮助。

import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class YFileChooser implements ActionListener{
	JFrame frame=new JFrame("文件选择器实例");
	JTabbedPane tabPane=new JTabbedPane();//选项卡布局
	Container con=new Container();//布局1
	Container con1=new Container();//布局2
	JLabel label1=new JLabel("选择目录");
	JLabel label2=new JLabel("选择文件");
	JTextField text1=new JTextField();
	JTextField text2=new JTextField();
	JButton button1=new JButton("...");
	JButton button2=new JButton("...");
	JFileChooser jfc=new JFileChooser();//文件选择器
	YFileChooser(){
		jfc.setCurrentDirectory(new File("d:\\"));//文件选择器的初始目录定为d盘
		//下面两行是取得屏幕的高度和宽度
		double lx=Toolkit.getDefaultToolkit().getScreenSize().getWidth();
		double ly=Toolkit.getDefaultToolkit().getScreenSize().getHeight();
		frame.setLocation(new Point((int)(lx/2)-150,(int)(ly/2)-150));//设定窗口出现位置
		frame.setSize(300,150);//设定窗口大小
		frame.setContentPane(tabPane);//设置布局
       //下面设定标签等的出现位置和高宽
		label1.setBounds(10,10,70,20);
		label2.setBounds(10,30,100,20);
		text1.setBounds(80,10,120,20);
		text2.setBounds(80,30,120,20);
		button1.setBounds(210,10,50,20);
		button2.setBounds(210,30,50,20);
		
		button1.addActionListener(this);//添加事件处理
		button2.addActionListener(this);//添加事件处理
		con.add(label1);
		con.add(label2);
		con.add(text1);
		con.add(text2);
		con.add(button1);
		con.add(button2);
		con.add(jfc);
		tabPane.add("目录/文件选择",con);//添加布局1
		tabPane.add("暂无内容",con1);//添加布局2
		frame.setVisible(true);//窗口可见
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//使能关闭窗口,结束程序
	}                             
	public void actionPerformed(ActionEvent e){//事件处理
		if(e.getSource().equals(button1)){//判断触发方法的按钮是哪个
			jfc.setFileSelectionMode(1);//设定只能选择到文件夹
			int state=jfc.showOpenDialog(null);//此句是打开文件选择器界面的触发语句
			if(state==1){
				return;//撤销则返回
			}
			else{
				File f=jfc.getSelectedFile();//f为选择到的目录
				text1.setText(f.getAbsolutePath());
			}
		}
		if(e.getSource().equals(button2)){
			jfc.setFileSelectionMode(0);//设定只能选择到文件
			int state=jfc.showOpenDialog(null);//此句是打开文件选择器界面的触发语句
			if(state==1){
				return;//撤销则返回
			}
			else{
				File f=jfc.getSelectedFile();//f为选择到的文件
				text2.setText(f.getAbsolutePath());
			}
		}
	}
	public static void main(String[] args) {
		new YFileChooser();

	}

}

 

7
0
分享到:
评论
2 楼 azhqiang 2012-12-14  
非常感谢。解决了一个困扰的问题。
1 楼 gongchangming 2008-08-13  

相关推荐

    Java Swing组件文件选择器JFileChooser简单用法示例

    Java Swing组件文件选择器JFileChooser简单用法示例 ...JFileChooser是Java Swing中一个功能强大且灵活的文件选择器组件,我们可以通过它来选择文件或文件夹,并在实际开发中使用它来实现特定的功能。

    Java Swing 文件选择器

    总结来说,这个"Java Swing 文件选择器"的例子展示了如何利用`JFileChooser`组件在Java Swing应用中实现用户友好的文件选择功能。通过理解`JFileChooser`的工作原理和提供的各种配置选项,开发者可以轻松地集成文件...

    Swing Datepicker时间选择器jar包

    Swing Datepicker时间选择器是一个在Java Swing库中用于处理日期选择的组件,它提供了用户友好的界面,允许用户在应用程序中方便地选取日期。在Java编程中,Swing库是一个丰富的图形用户界面(GUI)工具包,它是Java ...

    swing打开文件选择器JFileChooser

    NULL 博文链接:https://happyqing.iteye.com/blog/2063990

    基于Swing的文件操作

    通过使用Swing的组件,如`JFileChooser`,可以轻松实现文件选择,再配合`java.io`包的流处理类,实现文件的按字节合并。这种技术广泛应用于各种需要处理用户上传或下载文件的场景,为用户提供了一种直观且灵活的方式...

    Java文件选择器Java文件选择器Java文件选择器Java文件选择器

    本文详细介绍了如何在Java中使用Swing组件创建一个文件选择器,并将其集成到表格单元格中。通过这种方式,用户可以直接在表格中选择文件,大大提高了应用程序的易用性。此外,还解释了如何通过自定义`FileFilter`来...

    swing 日期选择控件

    尽管Swing自身没有内建的日期选择器,但通过扩展JFrame、JPanel等基本组件以及利用其他类库,可以创建自定义的日期选择控件。 在提供的描述中提到了"包含库文件和资源文件",这意味着这个压缩包可能包含了一个完整...

    Swing JAVA 文件比较 工具

    窗口内可能会有文件选择器组件(如JFileChooser)来让用户选择需要比较的文件,以及结果显示区域(如JTextArea或JTable)来展示比较结果。 文件比较通常涉及到读取文件内容,然后使用字符串比较算法,如逐行或逐...

    java swing 时间日期选择控件

    JCalendar包含一个日历面板和一个日期选择器,用户可以通过点击日、周、月或年视图来选择日期。它还支持日期范围选择、日期格式化以及多语言环境。 2. **JDatePicker**: 这是SwingX库中的一个组件,它提供了一个...

    Swing 文件选择&按钮控件&弹出窗口

    在Java的Swing库中,开发用户界面时经常会用到文件选择、按钮控件和弹出窗口等功能。这些是构建图形用户界面(GUI)的基本组件,使得用户能够与应用程序进行交互。下面我们将深入探讨这些主题。 1. **文件选择**: ...

    Swing 文件選擇器

    2. **设置当前目录**:通过调用`setCurrentDirectory()`方法,你可以指定文件选择器打开时显示的初始目录。如果不设置,默认会是用户的个人目录。 3. **文件过滤器**:`JFileChooser`支持文件过滤,可以通过`...

    Swing写的上传文件

    1. 文件选择器:Swing提供JFileChooser组件,允许用户选择本地文件或目录。用户可以通过点击文件选择对话框来浏览并选择要上传的文件。 2. 文件信息显示:在用户选择文件后,应用可能需要在界面上显示所选文件的...

    java文件选择器

    ### Java Swing 文件选择器知识点详解 #### 一、概述 Java Swing 提供了一种非常方便的方式来让用户选择文件或目录,这主要通过 `JFileChooser` 类实现。`JFileChooser` 是一个标准的文件对话框,可以用来打开或者...

    java swing实现pdf阅读器

    总的来说,用Java Swing实现一个PDF阅读器是一个涉及多方面技能的任务,包括对PDF格式的理解、Java GUI编程、IO操作以及第三方库的熟练使用。通过不断学习和实践,可以构建出功能强大且用户友好的PDF阅读器。

    有用的例子啊JAVA文件选择器

    在Java编程中,文件选择器(FileChooser)是一个非常实用的工具,它允许用户从本地文件系统中选择文件或目录。这个“有用的例子啊JAVA文件选择器”提供的示例代码可以帮助我们更好地理解如何在Java应用程序中集成...

    Swing展示的文件系统树

    在"Swing展示的文件系统树"这个主题中,我们将深入探讨如何使用`JTree`来创建一个动态显示文件系统的视图。 首先,`JTree`是`javax.swing`包的一部分,它继承自`JComponent`,并实现了`Scrollable`接口,因此可以...

    Swing文本编辑器

    总的来说,Swing文本编辑器的开发是一个综合性的项目,涵盖了Swing组件的使用、事件处理、文件操作以及可能的文本处理算法。通过这个项目,开发者可以深入理解Swing的API和GUI设计原则,同时也可以锻炼到问题解决和...

    java文件选择器代码

    - 是Swing提供的文件选择器组件。 - 可以设置不同的文件选择模式(如只选文件、只选目录或两者都可选)。 - 提供了显示对话框的方法:`showOpenDialog()` 和 `showSaveDialog()`。 2. **`ActionListener` 接口**...

    Java文件选择器源代码

    由于Java的跨平台特性,使用JFileChooser编写的代码可以在任何支持Java的平台上运行,无需修改,这使得Java文件选择器源代码具有很高的可移植性。 7. **性能优化**: 当处理大量文件时,为了提高性能,可能需要...

    基于java swing 的文件管理器.zip

    【标题】:基于Java Swing的文件管理器 Java Swing是一个用于构建桌面应用程序的图形用户界面(GUI)工具包,它是Java Foundation Classes (JFC)的一部分。这个“基于Java Swing的文件管理器”项目是一个实现类似...

Global site tag (gtag.js) - Google Analytics