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
- Support for unicode
- Multiple columns are supported
- ... and many more
This component was designed for cross-platform applications.
Author: Mike Lischke
LCL Port: Joerg Thaler,Christian Ulrich
The new beta releases can be found on the Lazarus CCR Files page
The old stable release can be found on the Lazarus CCR Files page.
you can checkout the actual source from
commandline to do this is
Bug reporting / Feature request
- 11.02.2010 New port - VirtualTreeView 4.8.6R1
- 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 Virtual Treeview history page.
Dependencies / System Requirements
- FPC 2.0.0 or newer
- Lazarus 0.9.8
- lclextensions (http://code.google.com/p/luipack/downloads/list)
Issues: Tested on Windows,Linux. Needs testing on MacOS. The scroll bar does not work on OSX 10.8.6. See forum post about branch 4.8: http://www.lazarus.freepascal.org/index.php/topic,12172.0.html
- 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 VirtualTreeview Main Page (search for help in chm format).