📄 mytreenode.java
字号:
import javax.swing.tree.*;
import java.io.*;
import javax.swing.*;
public class MyTreeNode extends DefaultMutableTreeNode
{
boolean explored=false;
public MyTreeNode(File file)
{
super(file);
}
public boolean isExplored()
{
return explored;
}
public File getFile()
{
File file=(File)getUserObject();
return file;
}
public boolean isDirectory()
{
File file=getFile();
return file.isDirectory();
}
public boolean canRead()
{
File file=getFile();
return file.canRead();
}
public boolean isExists()
{
File file=getFile();
return file.exists();
}
public void explore()
{
if(!isDirectory())
return;
if(!canRead())
{
errorMessage("此目录不可读,请检查你是否有权限!");
return;
}
if(!isExists())
{
errorMessage("此目录不存在,或是设备未连接好!");
return;
}
if(!isExplored())
{
File file=(File)getUserObject();
File[] child=file.listFiles();
if(child!=null)
{
for(int i=0;i<child.length;i++)
{
if(child[i].isDirectory())
{
add(new MyTreeNode(child[i]));
}
}
}
explored=true;
}
}
public boolean getAllowsChildren() {
return isDirectory();
}
public boolean isLeaf()
{
return !isDirectory();
}
public void errorMessage(String message)
{
JOptionPane.showMessageDialog(null,message);
}
public String toString()
{
File file=(File)getUserObject();
String filename=file.toString();
int index=filename.lastIndexOf(File.separator);
return (index!=-1&&index!=filename.length()-1)?filename.substring(index+1):filename;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -