Inserté el MS Treeview control 6.0 (SP4) que viene en los objetos OLE de VFP9 SP2.
Por ilógico que parezca, leí que debo usar la palabra object aquí:
Por ejemplo, si pongo esto en el init del form:
Thisform.tree1.Object.Enabled = .f.
Imposibilita que el usuario haga clicks sobre los nodos, para seleccionarlos.
Tengo un tabla libre como la de la figura.
En el init del treeview, que renombre a tree1 tengo este código.
IF NOT USED("TABLATRE")
USE TABLATRE IN 0
ENDIF
SELECT TABLATRE
*CARGA LOS PADRES
SCAN
MESSAGEBOX("Revisando.. "+STR(RECNO()),0+64,"Aviso",1000)
this.object.Nodes.Add(,0,tablatre.codigo,ALLTRIM(tablatre.texto))
ENDSCAN
*CARGA LOS HIJOS
SCAN
MESSAGEBOX("Revisando para agregar hijos.. "+STR(RECNO()),0+64,"Aviso",1000)
this.oBJECT.Nodes.Add(tablatre.codigo,1,tablatre.codhijo,ALLTRIM(tablatre.textohijo))
ENDSCAN
Se agregan los hijos, pero no dentro de los padres sino en la parte de abajo.
Lo que quiero es que se agreguen pero dentro de cada padre.