Hola: Aquí un ejemplo para cargar el treeview.
<Haber agregado el treeview y su respectivo ImageList>
<nombre para treeview = treeview, nombre para ImageList = Image_list>
1) Crear un cursor llamado cPrueba(c1 c(9), c2 c(30))
2) Agregar datos:
A01 Nivel1
A01001 SubNivel1 - Nivel1
A01002 SubNivel2 - Nivel1
A02 Nivel2
A02001 SubNivel1 - Nivel2
A02002 SubNivel2 - Nivel2
A02002001 SubNivel1 - SubNivel2
A02002002 SubNivel2 - SubNivel2
Bueno son datos para prueba(por el ancho del campo 1 sólo podemos
agregar hasta 9 caracteres y ten en cuenta que los niveles están de 3 en 3
3) Programar en el evento init del formulario:
*------------------------------------
o = this.treeview
o.ImageList = this.image_list && nombre de objeto image
SELECT cPrueba
GO TOP
o.Nodes.Clear
SCAN
loPadre = LEFT(ALLTRIM(c1), LEN(ALLTRIM(c1)) - 3)
lnImg = INT(LEN(ALLTRIM(c1)) / 3)
IF EMPTY(loPadre)
o.nodes.add(,, ALLTRIM(c1), ALLTRIM(c2), lnImg)
ELSE
o.nodes.add(loPadre, 4, ALLTRIM(c1), ALLTRIM(c2), lnImg)
ENDIF
ENDSCAN
USE IN cPrueba
*---------------------------
Espero te sirva.
Gabriel
Nota: Debes agregar tres imágenes al control image.