sábado, 2 de octubre de 2010

Función que abre Windows desde un TreeView

Esta función permite abrir un Window desde un TreeView leyendo o recorriendo cada Item y/o Sub Item de un Objeto Menu.

Esta funcion la tengo creada en mi Objeto TreeView, en mi caso mi función tiene por nombre of_openwindow con dos parametros:

am_menu de tipo Menu
as_label de tipo String
Copiar y Pegar:

Long ll_Item
Long ll_Items
Long ll_SubItem
Long ll_SubItems
String ls_TextSubItem
Menu lm_menu

ll_Items = UpperBound(am_menu.Item)

FOR ll_Item = 1 TO ll_Items
ll_SubItems = UpperBound(am_menu.Item[ll_Item].Item)
FOR ll_SubItem = 1 TO ll_SubItems
lm_menu = am_menu.Item[ll_Item].Item[ll_SubItem]
ls_TextSubItem = am_menu.Item[ll_Item].Item[ll_SubItem].Text

IF ls_TextSubItem = as_Label THEN
lm_menu.EVENT Clicked()
EXIT

END IF
NEXT
NEXT

Luego en el Evento Clicked del Objeto TreeView:

//Creando el Objeto Menu y usando el Menu
Menu lm_Menu

lm_Menu = CREATE USING m_nombre_menu

//Declarando variable TreeviewItem
TreeViewItem itv_TreeViewItem

//Declarando variable String para obtener la Etiqueta o Label del Item del Objeto TreeView
String ls_Label
ls_Label = ltv_TreeViewItem.Label

//Invocamos a la Funcion of_openwindow dandole los parametros que necesita
of_openwindow(lm_Menu, ls_Label )

NOTA: Para el ejemplo se declararon las variables de manera local en el mismo Evento Clicked del Objeto TreeView, ya depende mucho de cada uno como implementar este aporte quizás como es mi caso declarando las variables de tipo instancia porque tengo un Objeto TreeView Ancestro y las variables las utilizo para otras funcionalidades, lo importante es poder compartir con esta función y sea de gran utilidad.

No hay comentarios: