VirtualTreeview is a treeview control built from ground up.
Its main characteristics are :
- it is extremely fast. Adding one million nodes takes only ~700 milliseconds
- very small memory foot print. by only allocating about 60 bytes per node
- optimized for high speed access. It takes as few as 0.5 seconds to traverse one million nodes
- Multiselection is supported
- Drawing the entire tree to a bitmap or the printer is supported
- fixed background image can be used
- Hot style for nodes is supported
- Nodes can have individual heights
- Sorting via compare callback
- using Unicode/wide strings exclusively
- Multiple columns are supported
- ... and many more
The download contains the component, an installation package and a simple demo application, that illustrates the basic usage of the component.
This component was designed for cross-platform applications.
Author: Mike Lischke
LCL Port: Joerg Thaler,Christian Ulrich
The latest stable release can be found on the Lazarus CCR Files page.
you can checkout the actual source from
Bug reporting / Feature request
- 12.03.2006 Some fixes for Lazarus compatibility > 0.9.13
- 02.11.2005 TWorkerThread is working now
- 08.10.2005 first Fixes for Header
Complete Changelog can be found at Main VirtualTreeview Page
Dependencies / System Requirements
- FPC 2.0.0 or newer
- Lazarus 0.9.8
Issues: Tested on Windows,Linux. Needs testing on MacOS.
- Create the directory lazarus\components\virtualtreeview
- On this directory, unzip the files from the zip file
- Open lazarus
- Open the package virtualtreeslcl.lpk with Component/Open package file (.lpk)
- (Click on Compile only if you don't want to install the component into the IDE)
- Click on Install
Can be found at Main VirtualTreeview Page