2008年3月10日星期一

ProjectTreeListener使用說明

ProjectTreeListener是用來自訂處理當ProjectTreeList列出每一個Task時對該Task的操作。

方法說明:

  1. public void whenRootListed(Project project)
    1. 當ProjectTreeList列出project時的處理方法
  2. public void whenRootListed(Task task)
    1. 當ProjectTreeList列出頂層task時的處理方法
  3. public void whenNodeListed(Task task)
    1. 當ProjectTreeList列出子task時的處理方法。不論該task的層次有多深都會經此方法列出。

如何配合ProjectTreeList使用:

首先你要做好ProjectTreeListener給ProjectTreeList使用

假設你有以下的Task

Variable Name Task Name Parent Task
taskA Task A  
taskB Task B Task A
taskC Task C Task B

和Project: Name: Project 1

做好ProjectTreeListener: PTLTest

private class PTLTest implements ProjectTreeListener{
    public void whenNodeListed(Task task) {
        System.out.println(task);
    }

    public void whenRootListed(Project project) {
        System.out.println(project);

    }

    public void whenRootListed(Task task) {
        System.out.println(task);
    }
}

然後輸入在void main(String srgs[])輸入以下程式碼:

ptlt=new PTLTest();
ProjectTreeList ptl=new ProjectTreeList(project,ptlt);
ptl.listTasks();

上例將輸出:

Project 1

Task A

Task B

Task C

如改成

ptlt=new PTLTest();
ProjectTreeList ptl=new ProjectTreeList(taskB,ptlt);
ptl.listTasks();

上例將輸出:

Task B

Task C

沒有留言: