添加摘要任务

在工具栏中和快捷菜单中,都有“添加摘要任务”的命令,执行该命令,会自动当前位置插入一个摘要任务,原来的任务自动成为该摘要任务的 子任务。

实际操作的时候,也可以直接增加一个普通任务,然后利用上移、下移、左移、左移等按钮,将其他任务移到该任务之下,该任务就自动成了一个摘要任务:

删除摘要任务

如果删除摘要任务,那么它所有的子任务都会被删除,万一发生误删除,可以单击工具栏中的撤销按钮。

通过代码设置摘要任务

Task有个OutlineParent属性,用于设置父任务(摘要任务),例如执行下面的代码:

Dim
gv As GanttView = e.Form.Controls("GanttView1").GanttView
gv.Tasks.Clear()
gv.StartDate =
New Date(2024, 9, 1)  

'
添加摘要任务,摘要任务不需要设置属性
Dim
tk1 As New Gantt.Task
tk1.Name =
"摘要任务"
gv.Tasks.Add(tk1)


'
添加第一个子任务
Dim
tk2 As New Gantt.Task
tk2.Name =
"子任务一"
tk2.Mode = Gantt.TaskMode.Automatic
tk2.ConstraintDate =
New Date(2024, 9, 6)
tk2.ConstraintType = Gantt.ConstraintType.StartNoEarlierThan
tk2.Duration = 3
tk2.OutlineParent = tk1
'给子任务指定摘要(父)任务
gv.Tasks.Add(tk2)


'
添加第二个子任务
Dim
tk3 As New Gantt.Task()
tk3.Name =
"子任务二"
tk3.Mode = Gantt.TaskMode.Automatic
tk3.ConstraintDate =
New Date(2024, 9, 8)
tk3.ConstraintType = Gantt.ConstraintType.StartNoEarlierThan
tk3.Duration = 6
tk3.OutlineParent = tk1
'给子任务指定摘要(父)任务
gv.Tasks.Add(tk3)

可以得到:

提示:

除了OutlineParent属性,Task还有一个OutlineParentID属性,用于设置摘要任务的ID,所以

tk2.OutlineParent = tk1

也可以改写为:

tk2.OutlineParentID = tk1.ID

添加子任务

前面的代码是给子任务设置父任务,我们也可以给付父任务添加子任务(使用Task的AddChild方法),效果是一样的:

Dim gv As GanttView = e.Form.Controls("GanttView1").GanttView
gv.Tasks.Clear()
gv.StartDate =
New Date(2024, 9, 1)  

'
添加摘要任务,摘要任务不需要设置属性
Dim
tk1 As New Gantt.Task
tk1.Name =
"摘要任务"
gv.Tasks.Add(tk1)


'
添加第一个子任务
Dim
tk2 As New Gantt.Task
tk2.Name =
"子任务一"
tk2.Mode = Gantt.TaskMode.Automatic
tk2.ConstraintDate =
New Date(2024, 9, 6)
tk2.ConstraintType = Gantt.ConstraintType.StartNoEarlierThan
tk2.Duration = 3
gv.Tasks.Add(tk2)
tk1.AddChild(tk2)
'将tk2添加为tk1的子任务

 
'添加第二个子任务
Dim
tk3 As New Gantt.Task()
tk3.Name =
"子任务二"
tk3.Mode = Gantt.TaskMode.Automatic
tk3.ConstraintDate =
New Date(2024, 9, 8)
tk3.ConstraintType = Gantt.ConstraintType.StartNoEarlierThan
tk3.Duration = 6
gv.Tasks.Add(tk3)
tk1.AddChild(tk3)
'将tk3添加为tk1的子任务


本页地址:http://www.foxtable.com/webhelp/topics/3997.htm