Skip to main content

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.

VCL Gantt Control

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.

The Chart View

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).

The Timeline View

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).

The Resource Sheet View

Tasks

The VCL Gantt Control supports the following task types:

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 Dependency

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:

  • Load a chart from an XML file or stream

  • 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 to 12 AM (the following day).
Night Shift
In this calendar, a day spans from 11 PM to 8 AM and includes a one-hour break at 3 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.