📄 filepanelimp.java
字号:
package wjhk.jupload;import java.io.File;import java.awt.*;import javax.swing.*;import java.awt.dnd.DropTarget;import java.awt.dnd.DropTargetListener;public class FilePanelImp extends Panel implements FilePanel{ //------------- INFORMATION -------------------------------------------- public static final String TITLE = "JUpload DnDListener"; public static final String DESCRIPTION = "FilePanel Implementation."; public static final String AUTHOR = "William JinHua Kwong"; public static final double VERSION = 1.1; public static final String LAST_MODIFIED = "22 January 2004"; //------------- VARIABLES ---------------------------------------------- private DefaultListModel listModel; private JList jlist; private DropTarget dropTarget; private DropTargetListener dtListener; public FilePanelImp(JUploadPanel jup){ this.setLayout(new BorderLayout()); listModel = new DefaultListModel(); jlist = new JList(listModel); JScrollPane listScroll = new JScrollPane(jlist); dropTarget = new DropTarget(jlist, new DnDListener(jup)); this.add(listScroll); } public void addFiles(File[] f){ if(null != f){ for(int i = 0; i < f.length; i++){ addDirectoryFiles(listModel, f[i]); } } } protected void addDirectoryFiles(DefaultListModel dlm, File f){ if(!f.isDirectory()){ addFileOnly(dlm, f); }else{ File[] dirFiles = f.listFiles(); for(int i = 0 ; i < dirFiles.length; i++){ if(dirFiles[i].isDirectory()){ addDirectoryFiles(dlm, dirFiles[i]); }else{ addFileOnly(dlm, dirFiles[i]); } } } } protected void addFileOnly(DefaultListModel dlm, File f){ // Make sure we don't select the same file twice. if(!dlm.contains(f)) dlm.add(dlm.getSize(), f); } public File[] getFiles(){ File[] arrayFiles = new File[listModel.size()]; listModel.copyInto(arrayFiles); return arrayFiles; } public int getFilesLength(){ return listModel.size(); } public void removeSelected(){ for(int i=0; i < listModel.size();){ if(jlist.isSelectedIndex(i)){ listModel.remove(i); }else{ i++; } } } public void removeAll(){ listModel.clear(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -