Código fuente de Setfilter
Línea larga, I, cur_len, p
Cadena mycode, str, myname, mylabel
Long handle_current, h1
treeviewitem
elemento nuevo de treeview
h 1 = TV_1 .finditem(currenttreeitem!,0)
handle_current = TV_1 .finditem(childtreeitem!, h1)
si maneja _ current & lt entonces 0
tv_1.getitem(h1, item)
mylabel=item.label
p=pos(mylabel , "-")
mycode=mid(mylabel, 1, p - 1)
cur_len=len(mycode)
str="id like' "+mycode+" " " "
dw_1.setfilter(str)
dw_1.filter()
rows=dw_1.rowcount()
Para i=1 en la fila
mi código = dw_1.getitemstring(I, "No")
mi nombre = dw _ 1 getitemstring(I, " nombre ". )
Si len(mycode)=cur_len+2, entonces
nueva etiqueta de elemento = mi código+"-" +mi nombre
nuevo elemento. =(cur _ len+2)/2+1
nuevo elemento seleccionadopictureindex =(cur _ len+2)/2+2
TV _ 1. insertar el último elemento( h 1, newitem)
Si... terminará
Entonces
Si... terminará Fin
tv_1 .expanditem(h1)
Devuelve 0
Luego crea una ventana de datos en la que la base de datos tiene dos campos, no y nombre.
Ejemplos sin campos: la primera capa de 01, el segundo nodo de la primera capa de 0102 y el primer nodo de la segunda capa de 0201.
Evento ABRIR de la ventana principal: (Haga doble clic en cualquier parte de la ventana, pero no haga clic en el control)
TV_1. Inserttemlast (0, "nodo raíz", 1)
dw_1.settransobject(sqlca)
dw_1.retrieve()
.