rrayListFile所有文件的数组privateArrayListFilefolder
ewArrayListFile存放子目录文件的数组
fpublicFileNode因为FileSystemView是抽象类不能实例化的用getFileSystemView可以得到FileSystemView的一个实例,进而调用其非静态方法fsvFileSystemViewgetFileSystemViewfilefsvgetHomeDirectorygetHomeDirectory获得桌面路径对象prepareChildre
publicFileNodeFilefilefsvFileSystemViewgetFileSystemViewthisfilefileprepareChildre
获取显示的(即未隐藏)文件的列表在下面定义设置是否显示隐藏publicvoidsetHide
boolea
selected
oHide
selected获得图标publicIco
getIco
retur
fsvgetSystemIco
file返回文件绝对路径publicStri
gfileAbsoluteDirStri
gs
ullsfilegetAbsolutePathretur
s获取显示的(即未隐藏)文件的列表privatevoidprepareChildre
FilefilesfsvgetFilesfile
oHide
fori
ti0ifilesle
gthiallFilesaddfilesiiffilesiisDirectoryfolderaddfilesi删除文件publicvoidremoveFilei
ti
dex
fallFilesremovei
dex用于判断结点是树状列表的叶子publicboolea
isLeafcharfileTypeifisDirectoryfileTyperetur
folderisEmptyelseifallSelectedfileTyperetur
allFilesisEmptyelseifFilefileTyperetur
trueelseretur
true获取树状图中的文件对象publicFileNodegetChildcharfileTypei
ti
dexifisDirectoryfileTyperetur
ewFileNodefoldergeti
dexelseifallSelectedfileTyperetur
ewFileNodeallFilesgeti
dexelseifFilefileTyperetur
ullelseretur
ull获取子结点的数量publici
tgetChildCou
tcharfileTypeifisDirectoryfileTyperetur
foldersizeelseifallSelectedfileTyperetur
allFilessizeelseifFilefileTyperetur
1elseretur
1返回文件索引项以确定所选的子结点的位置publici
tgetI
dexOfChildcharfileTypeObjectchild
fifchildi
sta
ceofFileNodeifisDirectoryfileTyperetur
folderi
dexOfFileNodechildfileelseifallSelectedfileTyperetur
allFilesi
dexOfFileNodechildfileelseifFilefileTyperetur
1elseretur
1elseretur
1重载toStri
g函数,后面设置列表属性需要OverridepublicStri
gtoStri
gretur
fsvgetSystemDisplayNamefile352树形结点借FileNode中的函数实现TreeModel接口classMyTreeModelimpleme
tsTreeModelFileNodefile
ode
ullstaticcharfileTypeD定义结点类型为目录便于与isDirectory匹配publicMyTreeModelFileNodefile
odethisfile
odefile
odeOverridepublicvoidaddTreeModelListe
erTreeModelListe
erer