From Lazarus wiki
Revision as of 09:59, 26 June 2006 by Noelc (talk | contribs)
Jump to navigationJump to search


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


LGPL or Mozilla Public Licence 1.1


The latest stable release can be found on the Lazarus CCR Files page.


you can checkout the actual source from

Bug reporting / Feature request

Bug Reporting/Featurerequest

Change Log

  • 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

Status: Beta

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
  • Click on Install


Can be found at Main VirtualTreeview Page