📄 flushaction.java
字号:
package org.indigo.gui;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
/**
* 当点击刷新按钮时,执行此类的actionPerformed方法,重新生成
* 左边的结构树。
* @author wbz
*
*/
public class FlushAction implements ActionListener{
DefaultMutableTreeNode itsRoot=null;
DefaultTreeModel itsTreeModel=null;
public void actionPerformed(ActionEvent e) {
//JTree tree=ViewManager.getInstance().getTree();
if(e.getActionCommand().equals("刷新"))
{
itsRoot = ViewManager.getInstance().getTreeRoot();
itsTreeModel = (DefaultTreeModel) ViewManager.getInstance().getTree().getModel();
itsRoot.removeAllChildren();
// ViewManager.getInstance().setItsRoot(itsRoot);
String path="./taskconfig";
buildTree( path, itsRoot );
itsTreeModel.reload();
// Object o=TreePanel.getO();
// if(o!=null)
// System.out.println(o);
// tree.expandPath((TreePath)o);
}
}
private void buildTree(String fileName, DefaultMutableTreeNode parent) {
File source = new File( fileName );
if( source==null )
return ;
String []files = source.list();
if( files==null )
return;
for( int i=0; i<files.length; i++ )
{
File file = new File( source.getPath(), files[i] );
if( file.isDirectory() )
{
String thePath=null, dirName=null;
thePath = file.toString();
dirName = file.getName();
// System.out.println( "new: " + dirName );
// System.out.println( "go: " + thePath );
DefaultMutableTreeNode subParent = new DefaultMutableTreeNode( dirName );
itsTreeModel.insertNodeInto( subParent, parent, parent.getChildCount() );
buildTree( file.toString(), subParent );
}else
{
String str = file.getName();
if( str.endsWith(".task") )
{
str = str.substring( 0, str.lastIndexOf(".") );
itsTreeModel.insertNodeInto( new DefaultMutableTreeNode(str), parent, parent.getChildCount() );
// System.out.println( "new: " + file );
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -