Power Builder - Ayuda Treeview (Checkboxes)

   
Vista:

Ayuda Treeview (Checkboxes)

Publicado por Frank P. michel1n0@outlook.com (50 intervenciones) el 11/06/2013 17:50:52
Un muy buen día con todos ustedes amigos, vengo a solicitarles un poco de ayuda, resulta que estoy trabajando con la versión 10.5 de PB, y en mi aplicación utilizo un TreeView Control y marco la propiedad Checkboxes los cuales utilizo para realizar una selección entre todos los items del TV, el problema está en que al momento de guardar mis selecciones se precisa contraer el TV (cosa que he logrado realizar) y a la vez que todos los checkboxes marcados queden sin seleccionar (cosa que no ubico); es por tal que solicito ayuda con respecto a este inconveniente, el cómo mediante código desmarcar todos los checkboxes del TreeView Control.

Saludos,

Frank.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda Treeview (Checkboxes)

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 11/06/2013 22:13:27
Hola compañero, cuando guardas o almacenas los items seleccionados del TV, seguramente has recorrido cada registros.

De igual manera debes hacer para desmarcar las opciones, debes recorrerlas una a una y desmarcarlas.

No tengo el PB aquí para decirte si existe algun evento o función que realice esto de forma automática.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por Frank P. michel1n0@outlook.com (50 intervenciones) el 11/06/2013 22:35:30
Hola JeinnerH, lo que hago exactamente es que al momento de dar click en algun nodo me pase el data y el label de dicho nodo en el DW donde guardo lo que necesito, y al momento de presionar un boton guardar, es en donde en sí guardo los datos, pero además debe limpiar esos checkboxes del TV cosa que no logro hasta ahora, espero por favor me puedas ayudar al respecto ^^

Saludos,

Frank
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 11/06/2013 23:01:44
Ok. Ya busqué más información.

Para poder recorrer el TV, debes hacer algo como:

Long ll_ItemHandle=0
ll_ItemHandle=treeviewname.FindItem(RootTreeItem!, ll_ItemHandle)
Do While ll_ItemHandel <> -1
ll_ItemHandle=treeviewname.FindItem(NextTreeItem!, ll_ItemHandle)
// Vas Preguntando si el Item Está Marcado y lo Deschequeas.
Next
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por Frank P. (50 intervenciones) el 11/06/2013 23:26:53
si amigo, eso lo tengo bien entendido, pero mi pregunta es el cómo lo deschequeo? ya que no encuentro evento, propiedad o funcion q haga eso, por favor pido tu ayuda, ya realizo el recorrrido puesto que ademas de deschequear el TV tengo q contraerlo hasta el primer nivel, solo que el problema esta en deschequearlo, gracias ^^

Saludos,

Frank.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por Frank P. (50 intervenciones) el 12/06/2013 17:07:52
ok, parcialmente resuelto, lo único que se me ocurrió fue que al momento de limpiar y contraer todo, colocar en FALSE la propiedad Checkboxes del TV, esperemos que tal me va en la revisión del aplicativo, les comento en caso encuentre la solución que esperaba.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 12/06/2013 17:42:53
Ya instalé el PB 12.5 para poder ayudarte mejor, pero estoy haciendo algunas pruebas y tengo problemas. En teoría esto debíera funcionar:

Long ll_tvi
TreeViewItem lvi


ll_tvi=InsertItemFirst(0, 'PADRE', 1)
GetItem(ll_tvi, lvi)
lvi.Selected=FALSE
SetItem(ll_tvi, lvi)

Creo que anda por ahí el asunto, has algunas pruebas y me dices si te funciona.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 12/06/2013 20:59:33
Ya logré hacer unas cuantas pruebas y hay buenas y malas.

Las buenas: Recorrer el árbol es más simple.

Las Malas: No hay una propiedad como tal para indicar si el Item está chequeado (ojo, no es seleccionado, eso es otro asunto). Otro de los problemas del TV de PB es que tampoco hay forma de deschequearlo.

Te recomiendo que investigues sobre el uso de otro tipo de TV, que no sea el de PB, en la inserción de objetos para la ventana está la opción de OleObjects, ahí trae la opción de Insert Object y entre estas hay una CTreeView Control, creo que esta opción sí trae todo lo necesario.

Yo tengo un ejemplo por ahí, pero no lo tengo a mano, cuando lo consiga lo pongo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda Treeview (Checkboxes)

Publicado por Frank P. (50 intervenciones) el 13/06/2013 20:43:49
Ok muchas gracias por el dato, espero puedas conseguir esa guía pronto, porque me están presionando para que termine el proyecto, gracias ^^

Saludos,


Frank.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar