java 在jtextarea(文本框)里显示拖动进来文件的路径
来源:互联网 发布:seo推广培训 编辑:程序博客网 时间:2024/06/09 19:25
来自:junjin456963的专栏
最近做一个文件传输的小项目,遇到这么个问题,在textarea中拖进来的文件的路径怎么显示,
网上找了N个代码,找了一个在文本框里能显示拖进来文件的内容的,却没找到能显示文件路径的,
其实代码改那么几行就可以,但是我还菜,不知道怎么改,
最终把两个程序代码合并起来,这样就可以显示拖进来文件的路径了,
废话不多说,直接上代码
import java.awt.BorderLayout;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;
import java.util.Iterator;
import javax.swing.*;
class FileTransferHandler extends TransferHandler {
private JTextArea textarea;
public FileTransferHandler(JTextArea filePathList) {
this.textarea = filePathList;
}
public boolean importData(JComponent c, Transferable t) {
try {
List files = (List)t.getTransferData(DataFlavor.javaFileListFlavor);
//FileReader reader = new FileReader((File)files.get(0));
//textarea.read(reader, null);
Iterator iterator = files.iterator();
while(iterator.hasNext()){
File f = (File)iterator.next();
if (f.isFile()){
textarea.setText(f.getAbsolutePath());
}
else {
textarea.setText("不是标准文件");
}
}
//reader.close();
return true;
} catch (UnsupportedFlavorException ufe) {
ufe.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return false;
}
public boolean canImport(JComponent c, DataFlavor[] flavors) {
for (int i = 0; i < flavors.length; i++) {
if (DataFlavor.javaFileListFlavor.equals(flavors[i])) {
return true;
}
}
return false;
}
public static void main(String[] args) {
JTextArea textarea = new JTextArea(10, 20);
textarea.setTransferHandler(new FileTransferHandler(textarea));
JFrame f = new JFrame( "拖动文本文件到这个窗口里面 ");
f.getContentPane().add(new JScrollPane(textarea), BorderLayout.CENTER);
f.pack();
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
- java 在jtextarea(文本框)里显示拖动进来文件的路径
- java 在jtextarea(文本框)里显示拖动进来文件的路径
- [Java GUI] 在JTextArea中显示选定文件的内容
- 简单实现在文本框里输入路径,在文本区域显示文件
- 在vc中用MFC按纽打开一个txt文件,在旁边的文本框里显示文件的路径的方法??
- 在vc中用MFC按纽打开一个txt文件,在旁边的文本框里显示文件的路径的方法
- Java的swing界面拖拽文件至文本框显示文件路径
- 文本框(JTextField)和文本域(JTextArea)的使用详解
- 和文本框有关的练习(JTextArea和document)
- 在java工程里的properties文件不能显示中文?
- Java在JTextArea中显示一个图片背景的小例子 .
- 文本框控件JTextField和JTextArea的使用
- C#获取从指定的文件路径,获取该文件的图标,然后显示在image里
- 拖动文件到窗体上,并显示文件路径
- android 怎么调用联系人列表,并将选择的联系人号码显示在文本框里
- android 怎么调用联系人列表,并将选择的联系人号码显示在文本框里
- js实现在文本框输入图片的路径,在下方动态显示图片
- 文件拖动到文本框后自动打开的一种方法
- MyBatis初次环境配置
- hdu 5463 Clarke and minecraft(BestCoder Round #56 (div.2))
- Ubuntu 中 设置 FireFox 豆沙绿
- 冒泡排序
- java SE复习笔记25
- java 在jtextarea(文本框)里显示拖动进来文件的路径
- SQL Sever中对表的操作
- 第三周
- C++中虚析构函数
- 网上看到的一道腾讯面试题
- mybatis返回对象包含Long类型主键值 oracle数据库
- 第一篇
- windows 下用 easybcd修复ubuntu15.04启动项
- 给JTextAear添加背景图片