Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo utilizar los controles de vista de árbol y de lista en VB?

¿Cómo utilizar los controles de vista de árbol y de lista en VB?

Uso del control TreeView

TreeView

El control TreeView se puede utilizar para mostrar datos jerárquicos, como árboles organizativos, elementos de índice, archivos y directorios en el disco. esperar.

Figura 2.40 TreeView típico

Usos posibles

Crear un árbol organizativo que los usuarios puedan manipular.

Cree un árbol de base de datos que muestre al menos dos o más niveles.

Establecer propiedades del objeto Nodo

El "árbol" se compone de algunas ramas de "nodo" en cascada. Cada nodo generalmente incluye una imagen (establecida con la propiedad Imagen) y una etiqueta (establecida). con la propiedad Texto). La imagen del nodo la proporciona el control ImageList asociado al control TreeView. Para obtener más información sobre el uso del control ImageList con otros controles, consulte "Uso del control ImageList".

Un nodo se puede expandir o plegar, dependiendo de si tiene nodos hijos, es decir, nodos que parten de él. En el nivel superior están los nodos "raíz", cada uno de los cuales puede tener cualquier número de nodos secundarios. No hay límite para la cantidad total de nodos (a menos que esté limitado por los recursos de la máquina). La figura 2.41 muestra un árbol con dos nodos raíz. Entre ellos, "Root 1" tiene tres nodos secundarios y "Child 3" tiene un nodo secundario. "Raíz 2" tiene nodos secundarios, indicados por un signo "+", pero no está expandido.

Figura 2.41 Nodos raíz y secundarios

Cada nodo en el árbol es en realidad un objeto Nodo programable, que pertenece a la colección Nodos. Como en otras colecciones, cada miembro de la colección tiene propiedades de índice y clave únicas que brindan acceso a otras propiedades del nodo correspondiente. Por ejemplo, el siguiente código establece las propiedades Imagen y Texto de un nodo específico con su Índice ("7"):

tvwMyTree.Nodes(7).Image = "closed"

tvwMyTree.Nodes(7).Text = "IEEE"

Sin embargo, si se asigna una clave única al nodo, como "7 ID", entonces el código anterior se puede reescribir de la siguiente manera:

tvwMyTree.Nodes("7 ID").Image = "cerrado"

tvwMyTree.Nodes("7 ID").Text = "IEEE"

La relación entre nodos y Referencias a nodos de relación

Cada nodo puede ser un nodo hijo o un nodo padre, dependiendo de su relación con otros nodos. El objeto Nodo tiene algunas propiedades que se pueden usar para devolver información diversa sobre nodos secundarios o nodos principales. Por ejemplo, el siguiente código utiliza la propiedad Children para devolver el número de nodos secundarios de un nodo.

MsgBox tvwMyTree.Nodes(10).Children

Sin embargo, otras propiedades se diferencian de la propiedad Children en que no devuelven información, pero sí referencias a otros objetos de nodo. Por ejemplo, la propiedad Parent devuelve una referencia al nodo principal de un nodo específico (siempre que el nodo no sea el nodo raíz). Con esta referencia, puede llamar a cualquier método o establecer propiedades disponibles en el objeto Nodo para administrar su nodo principal. Por ejemplo, el siguiente código devuelve las propiedades Texto e Índice del nodo principal:

MsgBox tvwMyTree.Nodes(10).Parent.Text

MsgBox tvwMyTree.Nodes(10). Parent.Index

Consejo para utilizar la instrucción Set para manejar objetos de tipo Nodo para gestionar referencias a otros objetos Nodo. Por ejemplo, el siguiente código establece una variable de objeto Node en la referencia devuelta por la propiedad Parent.

Luego use la variable de objeto para devolver las propiedades del nodo relevante:

Dim tempNode As Node 'Declara la variable de objeto.

'Establece la variable de objeto en la referencia devuelta.

Set tempNode = tvwMyTree.Nodes(10).Parent

MsgBox tempNode.Text 'Devuelve el texto del nodo padre.

MsgBox tempNode.Index 'Devuelve el índice del nodo padre.

Agregar objetos Node a la colección Nodes

Para agregar un Node al árbol, puedes usar el método Add (colección Nodes). Este método incluye dos parámetros, relativo y relación, que determinan dónde se agrega el nodo. El primer parámetro relativo especifica el nombre del nodo y el segundo parámetro relación especifica la relación entre el nodo recién agregado y el nodo denominado relativo.

Por ejemplo, el siguiente código agrega un nodo llamado "11 nodos" y lo convierte en hijo de un nodo llamado "7 nodos". La constante intrínseca tvwChild indica que el nuevo nodo es hijo del nodo especificado por el parámetro anterior. El tercer parámetro establece la propiedad Clave del nuevo nodo.

tvwMyTree.Nodes.Add "7 node", tvwChild, "11 node"

Otras relaciones posibles incluyen:

Descripción de valor constante

tvwLast 1 Este nodo se coloca después de todos los nodos al mismo nivel que el nodo relativo.

tvwNext 2 Este nodo se coloca después del nodo denominado relativo.

tvwPrevious 3 Este nodo se coloca antes del nodo denominado relativo.

tvwChild 4 El nodo se convierte en un nodo hijo del nodo denominado relativo.

Por ejemplo, suponiendo que hay tres nodos, si desea colocar el cuarto nodo entre el segundo y el tercer nodo, el código es el siguiente:

'Supongamos que el cuarto nodo El valor clave de los dos nodos es "2 nodos".

tvwMyTree.Nodes.Add "2 nodos", tvwNext

Los otros parámetros del método Add son clave, texto e imagen. Con estos parámetros, puede asignar propiedades de clave, texto e imagen al objeto Nodo cuando lo crea.

Detalles Para obtener más información sobre el método Agregar de la colección Nodes, escriba "Agregar método" en una búsqueda de índice y haga clic en Agregar método (colección Nodes), consulte "Agregar método".

La segunda forma de agregar un nodo es declarar una variable de objeto de tipo Nodo y luego usar la instrucción Set con el método Add. La instrucción Set establece la variable de objeto en el nuevo nodo. Luego puede usar esta variable de objeto para establecer las propiedades del nodo, de la siguiente manera:

Dim nodX As Node

Set nodX = tvwMyTree.Nodes.Add("10 node", tvwChild)

nodX.Key = "11 nodos"

nodX.Text = "IEEE"

nodX.Image = "cerrado"

Consejo: utilice la instrucción Set con Add para hacer que el código sea más legible y más fácil de depurar. Sin embargo, el código es más rápido si agrega nodos usando el método Agregar y sus parámetros.

Listview

El control ListView puede mostrar elementos usando cuatro vistas diferentes. Este control le permite organizar elementos en columnas con o sin encabezados de columna y mostrar iconos y texto que los acompañan.

Sintaxis

ListView

Descripción

Puede utilizar el control ListView para organizar elementos de la lista llamados objetos ListItem en los siguientes cuatro diferentes: Uno de las vistas:

Icono grande (estándar)

Icono pequeño

Lista

Informe

Ver propiedades Determina qué vista utiliza el control para mostrar elementos en la lista. También puede utilizar la propiedad LabelWrap para controlar si se pueden ajustar las etiquetas asociadas con los elementos de la lista. Además, puede administrar cómo se ordenan los elementos de la lista y la apariencia de los elementos seleccionados.

El control ListView incluye objetos ListItem y ColumnHeader. El objeto ListItem define varias propiedades de los elementos en el control ListView, como por ejemplo:

Una breve descripción del elemento.

El icono proporcionado por el control ImageList que aparece con el elemento.

Los fragmentos de texto adicionales, llamados subelementos, están asociados con el objeto ListItem que aparece en la vista del informe.

Puede utilizar la propiedad HideColumnHeaders para decidir si desea mostrar los encabezados de las columnas en el control ListView. Los encabezados de columna se pueden agregar en tiempo de diseño o en tiempo de ejecución. En tiempo de diseño, agregue encabezados de columna usando la pestaña Encabezados de columna del cuadro de diálogo Propiedades del control ListView. En tiempo de ejecución, utilice el método Add para agregar objetos ColumnHeader a la colección ColumnHeaders.

Nota de la versión El control ListView es parte de un conjunto de controles ActiveX en el archivo Mscomctl.ocx. Para utilizar el control ListView en su aplicación, debe agregar el archivo Mscomctl.ocx a su proyecto. Cuando distribuya su aplicación, instale el archivo Mscomctl.ocx en el directorio Microsoft Windows System o System32 del usuario. Para obtener más información acerca de cómo agregar controles ActiveX a un proyecto de Visual Basic, consulte la Guía del programador de Visual Basic.