Estoy intentando hacer con el scan del tree y ascan para recorrerlo pero no me da. tengo un tree con ramas, necesito saber el hitem de cada rama para compararlo con otro hitem el primer paso que hice fue oTree:scan({ |o| ... }) diganme si me equivoco porque es todo nuevo ...
... me das una mano con esto: yo tengo un Tree que tiene ramas y la propiedad cargo me guarda en cada ADD un ID (que lo trae de una DB sino usaria el hitem) cuando quiero agregar un item nuevo que esta identificado por un "id" (sacado de la dB) "necesito" recorrerme TODO el arbol ...
Si En la Clase TTVItem tienes que añadir este nuevo método: METHOD Bold( lOnOff ) INLINE TVSetItemBold( ::oTree:hWnd, ::hItem, lOnOff ) y al final de tu PRG esribe: #pragma BEGINDUMP#define _WIN32_IE 0x0500#include <Windows.h>#include <CommCtrl.h>#include <hbapi.h>HB_FUNC( ...
hay que usar estos flags: TV_ITEM tvi; tvi.mask = TVIF_STATE | TVIF_HANDLE; tvi.hItem = hItem; tvi.state = TVIS_BOLD; tvi.stateMask = TVIS_BOLD; SetItem(&tvi); ahora hay que ver como asignarlos a un item ya existente: SetItemState( hItem, ...
Prueba a usar: SET EXACT ON y SET DECIMALS TO ... también Y para salir de dudas: x := AScan( ::aTree, { | a | MsgInfo( a[ 5 ], oItem:cargo[ "hitem" ] ), .F. } ) asegurate visualmente que tienes los datos que crees tener :-) https://drive.google.com/file/d/14baPwYLoK8De8CmGWw-z7Li4LzehZcfX/view?usp=sharing
Antonio, Lo que necesito es "decirle" donde añadir el item, no de la forma que lo pones ahi, porque no se cuantos item son y cuantas ramas tiene cada item en si. pienso que haciendo "recursividad" lo puedo solucionar, pense que habia un "indice" para cada "item&quo...
Antonio, Mire el ejemplo pero no me soluciona lo que necesito. yo tengo en un archivo txt (suponte) los datos de los hitem, del cprompt y del parent del que depende ese cprompt. pero no se como indicarle que un determinado cprompt se inserte en otro. o sea, tengo esto: cprompt "uno" ...