Curso de VB II

Ejemplo

En el primer ejemplo suponemos que el proyecto tiene un formulario llamado Form1. El código añade el formulario a una colección, luego usa la colección para referenciar el formulario y cambiar su título:

Dim C As New Collection

Dim F As Form

Set F = Form1

C.Add F, "Mi formulario"

C.Item("Mi formulario").Caption = "Nuevo título"


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de VB II y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Ejemplo

El siguiente código añade un array a una colección y luego la utiliza para acceder a los datos del array, sumando los contenidos de los elementos 1 y 2:

Dim A(100) As Long, Total As Long

Dim C As New Collection

C.Add A, "vector"

Total = C("vector")(1) + C("vector")(2)

Notar que como Item es la propiedad por defecto de un objeto Collection. Cuando nos referimos a un objeto sólo por el nombre, obtenemos automáticamente la propiedad por defecto. Es decir:

C("vector")(2)

es lo mismo que:

C.Item("vector") (2)


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de VB II y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Ejemplo

La última forma de utilizar un objeto Collection es pasar por todos sus miembros utilizando la sentencia For Each ... Next. Funciona así (supongamos que C es la colección):

Supongamos que la colección C contiene un grupo de objetos Text Box. El siguiente código muestra los contenidos de todos los objetos Text Box en la ventana inmediata:

Dim objeto As Variant

For Each objeto in C

    Debug.Print objeto.Text

Next

La sentencia For Each ... Next no es tan útil cuando la colección contiene objetos de tipos diferentes. Esto es así porque no podemos estar seguros de que los métodos o propiedades de los objetos llamados en el bucle son admitidos por todos los miembros de la colección. En el código anterior, por ejemplo, si C contenía un objeto Label junto con los objetos Text Box, se produciría un error, porque un objeto Label carece de la propiedad Text.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de VB II y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Ejemplo

Vamos a ver como podríamos utilizar esto en un proyecto. En un formulario insertamos 5 TextBox, y un botón de comando. El objetivo es añadir 4 de los 5 TextBox a una colección y ver como cuando pulsemos el botón, se vacía el contenido de los incluidos en la colección.

El código contendrá además de las declaraciones, las instrucciones para añadir los cuatro primeros TextBox a la colección. Para borrar el contenido, bastará con vaciar la propiedad Text.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de VB II y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Las colecciones internas de Visual Basic

Entre bastidores, Visual Basic y el sistema operativo Windows mantienen determinadas colecciones que pueden ser extremadamente útiles para los programadores. Las colecciones internas son en cierto sentido parecidas a la clase Collection. Se diferencian en que no tienen métodos y sólo una propiedad, Count. Si pensamos en ello, esto tiene sentido. Como las colecciones son mantenidas por Visual Basic, el programador no necesita añadir o eliminar miembros, y, de hecho, hacerlo ocasionaría muchos problemas. También se diferencian en que están basadas en 0, teniendo los miembros índices que van de 0 a Count-1. Considerar las siguientes colecciones:

  • Cada proyecto de Visual Basic tiene una colección Forms que contiene todos los formularios cargados del proyecto.
  • Cada formulario del proyecto tiene una colección Controls que contiene todos los controles del formulario.
  • Windows mantiene una colección Printers que contiene una lista de todas las impresoras instaladas en el sistema actual.

Generalmente utilizaremos las colecciones Forms y Controls con la sentencia For Each ... Next para acceder a cada formulario del proyecto o control de un formulario.


Inscríbete ahora y accede a 3 unidades gratis

Evalua el curso de VB II y accede a las 3 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....


Si desea obtener un acceso sin restricciones a los contenidos del curso de VB II y disfrutar de todas las herramientas del aula virtual (Videos explicativos streaming, acceso a los foros, chat, ejercicios resueltos, la ayuda del tutor, audioconferencia, estudio de grabación, test y actividades de autoevaluación, etc...) puede inscribirse completamente gratis y comenzar a realizar de forma inmediata el curso.