VCL Gantt Control
- 4 minutes to read
The VCL Gantt Control is a project management tool that allows users to schedule activities related to project goals.
The control displays project tasks as horizontal bars whose start and finish points correspond to dates in the timescale. Users can create relationships between tasks with dependencies, manage resources, track task progress, and scale the chart to browse a project that spans any time period.
Refer to the following tutorial to create your first Gantt control-based application: Getting Started
Views
The control includes the following Views: Chart, Timeline, and Resource Sheet.
Chart
The Chart View allows users to browse a project and track its progress. The View consists of a chart and task sheet.
You can scroll the chart to find a task or zoom the chart in or out to browse your project in different timescales.
Refer to the following topic for more information: Chart Runtime Customization
Timeline
The Timeline View displays all tasks in chronological order and shows the duration of tasks (from hours to years).
You can choose a timescale and adjust the width of its cells to browse your project over different time periods.
Resource Sheet
The Resource Sheet View allows you to specify resources required for a task (people, materials, or expenses).
Tasks
The VCL Gantt Control supports the following task types:
- Task
- A simple task that defines steps necessary to reach project goals.
- Summary task
- A top-level task that allows you to group related subtasks.
- Milestone
- A task with a zero duration. You can use this task to mark important dates.
A user can also choose between automatic and manual scheduling modes for tasks.
Constraints
A user can specify how soon a task can start or finish. The following constraints are available:
- As Soon As Possible
- As Late As Possible
- Must Start On
- Must Finish On
- Start No Earlier Than
- Start No Later Than
- Finish No Earlier Than
- Finish No Later Than
Dependencies
Dependencies allow a user to define when a task should begin or end in relation to another task.
A task that depends on another task’s completion is a successor task. A task that defines when a dependent task should start or finish is a predecessor task. A task can have one or more dependencies.
A user can choose any of the following dependencies:
- FF (Finish-to-Finish)
- FS (Finish-to-Start)
- SF (Start-to-Finish)
- SS (Start-to-Start)
Chart Import and Export
The Chart View allows you to import and export its content as follows:
Save a chart to an XML file, stream, or image in any of the following formats: SVG, BMP, TIFF, PNG, JPEG, EMF, WMF, or GIF.
Read-Only Mode
In this mode, all data edit operations are restricted in the Chart and Resource Sheet Views.
Calendars
The control has the standard calendar. In this calendar, a day spans from 8
AM to 5
PM and includes a one-hour lunch break at 12
PM.
You can also add the following calendars:
- 24 Hours
- In this calendar, a day spans from
12
AM to12
AM (the following day). - Night Shift
- In this calendar, a day spans from
11
PM to8
AM and includes a one-hour break at3
AM.
Supported Render Modes
The VCL Gantt control uses a universal rendering technique and supports all render modes available for DevExpress VCL products:
- DirectX Mode
A Gantt control in DirectX render mode creates a Direct3D device context and uses a Direct2D-based canvas to draw content and UI elements. This mode is the most beneficial on a client machine with a discrete graphics card and high-DPI (4K+) displays, since calculation load shifts from CPU to GPU.
Note
The DirectX render mode imposes a number of requirements and limitations, such as the minimum operating system version. Refer to the mode description for details.
- GDI+ Mode
A Gantt control in GDI+ render mode uses only GDI+ API-based canvases to draw content and UI elements with higher quality compared to the basic GDI render mode.
You can enable this mode instead of DirectX if you cannot use hardware acceleration due to its limitations.
- GDI Mode
Default. The basic render mode available for all VCL DevExpress controls. A Gantt control in GDI mode uses a combination of GDI and GDI+ API-based canvases to draw content and UI elements.
A Gantt control uses GDI as a fallback render mode if a device context-related error occurs in DirectX mode.
Undo/Redo History
All operations applied to content are stored in action history. A user can press Ctrl+Z or Ctrl+Y to cancel changes applied to the control or re-apply canceled changes.