Professional Documents
Culture Documents
PRACTICANDO
APRENDA VISUAL BASIC
PRACTICANDO
José Felipe Ramírez Ramírez
Master en Informática Administrativa,
Catedrático de la Facultad de Contaduría Pública y Administración,
Universidad Autónoma de Nuevo León, México
Revisión técnica:
Pearson
Educación
ISBN: 970-26-0285-8
1234567890-03 02 01
Pearson
Educación
A Adriana, mi esposa,
porque ama mis propiedades,
hace mejores todos mis eventos
y motiva todos mis métodos.
CONTENIDO
____________________________________________________________________
Contenido ..........................................................................................................................................vi
índice de prácticas .............................................................................................................................xv
Lo inesperado ....................................................................................................................................xx
Prólogo ..............................................................................................................................................xxii
Forma y contenido del libro .............................................................................................................xxiii
Agradecimientos...............................................................................................................................xxvii
Inserción de objetos............................................................................................................................... 37
Propiedades de posición y dimensión .................................................................................................. 41
Organización de los objetos en el formulario ...................................................................................... 48
Cómo establecer las aplicaciones para diferentes resoluciones de monitores ..................................... 52
Resumen ....................................................................................................................................................... 55
Algunas respuestas a los ejercicios ..................................................................................................... 56
Capítulo 20: Cómo trabajar en una interfaz de múltiples documentos ............................................... 505
Fundamentos del entorno MDI .................................................................................................................. 506
Limitaciones que implica el uso de un formulario MDI ....................................................................... 508
Cómo preparar su aplicación para compilación y distribución ................................................................... 511
Resumen ...................................................................................................................................................... 512
Capítulo 28: Manejo de bases de datos corporativas usando ADO ........................................ 689
Bases de datos más allá de la computadora personal ...................................................................................... 690
Objeto de Datos ActiveX .......................................................................................................................... 690
Pubs: La base de datos de ejemplo ............................................................................................................ 692
Ejecución front - end a través de ADO ..................................................................................................... 693
Conexión a una base de datos corporativa mediante ADO ...................................................................... 694
Peticiones al servidor de bases de datos utilizando ADO ........................................................................ 701
DataGr-id (; Microsoft DataGrid Control OLEDB) ................................................................................... 704
SQL............................................................................................................................................................... 709
DML usando ADO ........................................................................................................................................ 720
ADO a través de ODBC ................................................................................................................................ 732
Conexión a través de DSN almacenado en el Registro ........................................................................... 733
Conexión a través de DSN almacenado en archivo DSN ....................................................................... 733
MDAC y problemas comunes en el enlace ................................................................................................... 735
Resumen ........................................................................................................................................................ 736
Parte 5: Apéndices
Apéndice II: Service Pack 5.0 de Visual Studio 6.0 ................................................................................... 803
Necesidad del Service Pack ............................................................................................................................ 803
Consideraciones de instalación ................................................................................................................. 805
Actualizaciones de productos relativos a Visual Basic ................................................................................... 807
Microsoft® Agent 2.0 ............................................................................................................................... 807
Visual Studio Installer ............................................................................................................................... 807
Problemas con los controles, resueltos con SP5 .............................................................................................. 807
Artículos de Microsoft Knowledge Base sobre los errores solucionados ........................................................ 812
Índice ................................................................................................................................................................813
ÍNDICE DE PRÁCTICAS
_________________________________________________________________________
xv
xvi índice de prácticas
16.03 Programa que comprueba las operaciones de arrastrar y colocar, y que utiliza un objeto
de destino que no es de tipo Form ......................................................................................................... 428
16.04 Programa que comprueba los estados de las operaciones de arrastrar y colocar, así como
los punteros predefinidos del entorno de Windows ............................................................................... 434
16.05 Programa que comprueba las operaciones de arrastrar y colocar utilizando el modo manual ........... 436
XX
Lo inesperado xxi
Errores en tiempo de ejecución (orden consecutivo)
Algunos campos no regresan valores al ejecutar el informe........................................................................... 766
El tamaño del informe excede el tamaño de la página.................................................................................... 766
Error desconocido ADO................................................................................................................................. 734
No se encuentra el nombre del origen de datos (Administrador ODBC)....................................................... 734
Error 5: Llamada a procedimientos o argumentos no válidos ........................................................................ 368
Error 6: Desbordamiento................................................................................................................................. 146
Error 9: El subíndice está fuera del intervalo....................,............................................................................ 153
Error 13: No coinciden los tipos ...................................................................................................................... 228
Error 48: Error al cargar la biblioteca "archivo.ocx".................................................................................... 735
Error 53: No se ha encontrado el archivo....................................................................................................... 397
Error 68: El dispositivo no está disponible ..................................................................................................... 463
Error 75: Error de acceso a ruta o archivo ..................................................................................................... 463
Error 76: No se ha encontrado la ruta de archivo........................................................................................... 462
Error 91: Variable de tipo objeto o la variable de bloque With no está definida............................................ 730
Error 380: El valor de la propiedad no es válido ........................................................................................... 515
Error 424: Se requiere un objeto ............................................................................................................. 115, 247
Error 481: La imagen no es válida.................................................................................................................. 397
Error 3020: Update o CancelUpdate sinAddNew o Edit ................................................................................ 612
Error 3044: {Rutaj No es una ruta válida ...................................................................................................... 575
Error 3078: El motor de base de datos Jet no encuentra la tabla o query ..................................................... 603
Error 3204: Base de datos ya existe................................................................................................................. 575
Error 3264: No hay campos definidos - No se puede agregar el objeto TableDefo índex ............................. 576
Error 3265: Elemento no encontrado en esta colección ................................................................................ 608
Error 3368: Relaciones deben ser por el mismo número de campos del mismo tipo de datos ....................... 587
Error 3420: Objeto inválido o no permanece definido ................................................................................... 578
Error 3421: Error de conversión de tipo de datos .......................................................................................... 620
Error 35600 El índice está fuera de los límites .............................................................................................. 415
Error 35601 No se encontró el elemento ........................................................................................................ 415
Error-2147217843: Conexión inválida............................................................................................................ 707
Error -2147217843: Login failed.................................................................................................................... 707
Error -2147217843: Attempt to locate entry in sysdatabase.......................................,................................... 708
PRÓLOGO
_________________________________________________________________________
Sólo esperamos una cosa: que practique, comprenda y aprenda Visual Basic.
xxii
FORMA Y CONTENIDO DEl LIBRO
_________________________________________________________________________
xxiii
xxiv Forma y contenido del libro
convenciones de la programación en Visual Basic, así como las mejoras relacionadas con el Service
Pack 5.0 de Visual Studio.
Cada parte se divide a su vez en capítulos; cada uno de los cuales tiene una organización consistente
que facilita la presentación del material.
• Cada capítulo tiene el tamaño adecuado para manejar un tema de manera completa, sin ser muy
extenso; la idea es que no interrumpa un tema sin agotarlo.
• Cada capítulo inicia con una sección de Objetivos, la cual describe de manera rápida lo que se
pretende aprender en dicho capítulo.
• Al final de cada capítulo se encontrará una sección de Resumen, en la cual se enumerarán los
puntos más importantes, principalmente los que serán indispensables para capítulos posteriores. En
el resumen también podrá encontrar respuestas relativas a algunas prácticas del capítulo.
Notas
Las notas que aparecen en el contenido de este libro pueden ser de los siguientes tipos:
• Las referencias marcadas como Nota contienen información suplementaria, que no repercute en la
realización de una tarea, pero que sin duda enriquecerá su acervo de conocimientos relativos a
Visual Basic.
• Las notas marcadas como Lo inesperado contienen explicaciones de aquello que le puede suceder
y que no esperaba que ocurriera; comportamientos extraños, errores, situaciones imprevistas de
toda índole. Por lo general, seguirán de prácticas que con toda intención generan el error, a efecto
de que usted lo pueda analizar y prevenir. Este tipo de notas será vital para usted, ya que los
errores más comunes y la forma de solucionarlos se detallarán en el momento oportuno.
Prácticas
• Las prácticas que se encuentren en este libro (que son muchas) estarán presentadas como listas
numeradas (1, 2, 3, y así sucesivamente). Una viñeta triangular (>>) indica el inicio de una
práctica. Las prácticas estarán numeradas por Capítulo.Práctica; las prácticas serán su guía para
saber cómo hacer algo.
• En el desarrollo de las prácticas será muy frecuente el uso de los menús de Visual Basic; algunos
de ellos tienen diferentes niveles de profundidad, es decir, de un
Forma y contenido del libro xxv
menú surge otro menú, y así sucesivamente. Para manejar esa situación, será lo mismo decir
"Seleccione en la barra de menús la opción Herramientas, después seleccione Opciones y después, en
el cuadro de diálogo que aparece, seleccione la ficha Avanzadas", que "Seleccione el menú
Herramientas — Opciones — Avanzadas".
Lo simplificamos porque en la práctica es así de fácil: mediante tres clics usted ya habrá hecho todo el
proceso de selección de una opción, en menos de tres segundos. La idea es que el libro no haga que lo
sencillo parezca complejo.
• El signo de suma (+) entre dos teclas indica que éstas deberán ser presionadas de manera
simultánea; por ejemplo, "Alt+A".
Archivos de apoyo
En el sitio Web http://www.enlace.net/ramirez2 se ha colocado un archivo llamado
AVBP.ZIP, que contiene los archivos comprimidos que son necesarios para la realización de las
prácticas del libro. Al ejecutar el programa, se generará un directorio llamado \avbp, que a su
vez tendrá varios directorios, como sigue:
\avbp
\cap01
\cap02
\cap03
..
• En \avbp\capn se colocarán los archivos necesarios para que pueda realizar de manera completa
y correcta las prácticas. La ncorresponde al número de capítulo en donde son requeridos los
archivos.
• En \avbp\capn se deberán guardar las aplicaciones que vaya generando, a efecto de que tenga
debidamente organizado su avance. La n corresponde al número de capítulo en el que son
generadas las aplicaciones.
Aunque no todos los capítulos requieren archivos o generan aplicaciones, se incluirán de tal forma
que se tenga un estándar de uso. No se incluyen los ejercicios ya resueltos; la idea es que usted
programe, ¿o no?
AGRADECIMIENTOS
Aprenda Visual Basic practicando no es el esfuerzo de una sola persona, y mucho menos la visión unipersonal de
un profesional en informática con ánimo de sentarse a escribir; más bien es una especie de consolidación
colectiva, la contribución de muchas cabezas y muchas manos, con el objeto de producir un libro idóneo para
capacitar a estudiantes de informática en la programación, utilizando para ello Visual Basic.
Quiero agradecer a todos los que de una forma u otra contribuyeron con el desarrollo de este libro. Los miembros
de la generación LI@ 1996-2000, de la Facultad de Contaduría y Administración, habitan de manera cómoda y
curiosa en cada uno de los ejercicios contenidos en el texto: para ustedes mi amistad, mi respeto y mi apoyo
constante.
Especialmente agradezco a dos personas: a Dalila Garza Villarreal, quien de manera exhaustiva y dedicada corrió
a cargo de los trabajos de edición del texto, le agradezco su paciencia y precisión en la revisión de los
documentos; sin su atinado apoyo, este libro sería una retórica técnica y extraña. A Juan Francisco Guevara
Álvarez, por otro lado, le agradezco haber probado y criticado todos y cada uno de los ejercicios y su explicación,
haber aportado ideas ("por qué no le agrega esto Lic...") y por transmitirme la sensación de que la docencia sólo
tiene esperanza si el alumno llega a superar al maestro. En palabras de Don Alfonso Reyes, son unos héroes en
mangas de camisa. No temen al trabajo arduo y llegarán lejos.
Agradezco a todos mis compañeros, que como yo, tienen muy presente que los egresados de la UANL deben ir
abriendo surco, y que de hecho lo hacen con gusto: José Luis Ramos, Juvencio Jaramillo, Magdiel Martínez, José
Méndez, Ismael Rodríguez Elizalde, Enrique Hernández Hernández, y a todos los compañeros de la División de
Postgrado de la FACPyA; agradezco también a mis amigos de la Universidad del Norte, Instituto Tecnológico de
Monterrey, ITESM, y demás; son tantos que no puedo precisarlos.
Agradezco a mis amigos Javier Chalup Ayala, José Rogelio Martínez Delgadillo, Abraham Alvarez Escobedo, y
tantos otros que comprendieron que mi preferente atención hacia el monitor de la computadora era un trance
pasajero: si me dieran a escoger entre el libro y ustedes, ¡adiós libro!
Agradezco a los alumnos y ex alumnos que con su retroalimentación ayudaron a obtener un mejor texto:
Guadalupe Rangel Vázquez, Elsa Marcela Lugo, Anna Elizabeth Franco, Mónica Castañeda Guerra y,
especialmente, a Mario Alberto Tamez García, quien probó todo el código del libro.
Como siempre, dejo al último lo más importante: agradezco a mi esposa, a quien dedico este libro, por su
paciencia y apoyo; a mi padre y a mi madre, porque les debo ser el profesional que soy: sólo cuando uno crece
comienza a entender y a agradecer. A mis hermanos, todo mi amor y todo lo bueno.
xxvii
Parte 1
Entorno integrado de
Desarrollo
En esta primera parte conocerá a Visual Basic como herramienta de
desarrollo de aplicaciones para el entorno de Windows. Así como el
artesano que termina primero su trabajo es aquel que sabe con
exactitud de qué herramientas dispone y dónde se encuentran éstas, de
la misma forma el desarrollador de aplicaciones conoce la enorme
variedad de utilerías y características que Visual Basic pone a su
disposición.
Esta primera parte tiene como objetivo que usted sepa qué partes
componen Visual Basic, cómo se utilizan esas partes, dónde las
encuentra y cómo puede administrarlas.
Capítulos:
1,2,3,4,5
Número de prácticas: 37
1
2
Capítulo
1
Visual Basic
como plataforma
de desarrollo
Objetivos
3
4 Parte 1; Entorno Integrado de Desarrollo
Objeto de la programación
Usted quiere aprender a programar en Visual Basic. Si no lo ha hecho antes en ningún
lenguaje y quiere empegar de lleno con la programación, déjeme decirle que estará
empezando a la mitad en el proceso de desarrollo de aplicaciones: una medianía que si
no percibe, puede costarle mucho trabajo entender,
No siempre aprender a programar lo conducirá a solucionar sus problemas de infor-
mación. Simplemente automatizará tareas, y éstas pueden constituir en sí mismas una
solución o un problema.
En conclusión, queremos decirle que la programación no es una actividad aislada que
produzca resultados por sí misma: la programación es una de las muchas tareas que se
tienen que hacer al desarrollar una aplicación.
El modelo clásico del Ciclo de Desarrollo de Aplicaciones tiene las siguientes fases:
Como puede darse cuenta, la programación es una fase muy avanzada en e] proceso
de desarrollo; si no sabe qué necesita hacer, mucho menos sabrá cómo hacerlo. Por
otro lado. si ya sabe qué es lo que necesita hacer, debe asegurarse de que la transición
del "qué" al "cómo" se haga sin errores. La mayoría de los errores de sistemas son
debido a que lo especificado en e] análisis y el producto final no representan lo
mismo. El argumento de los usuarios: "eso no es lo que yo quería", es generalmente
válido.
Concluimos que el objeto de la programación es generar código sin errores que
cumpla con lo definido en el diseño y que satisfaga los requerimientos del análisis.
En este libro seremos bastante claros con respecto a lo que queremos que el programa
haga, a cómo lo haga, y además nos aseguraremos de que no tenga errores. Aún más
importante, queremos que usted aprenda a resolver situaciones que generan error,
Capitulo 1: Visual Basic como plataforma de desarrollo 5
ya que una vez que concluya el ejercicio de este libro nadie le dirá cómo resolver los
errores que le aparezcan; serán suyos, como suya será la solución a ellos.
Nuestros grandes consejos:
• No comience a programar sino hasta saber qué desea que su programa realice.
Olvide la creencia de que en un momento de inexplicable lucidez programadora, las
ideas con respecto a la solución de un problema aparecerán en el proceso de
codificación.
• Aprenda a desarrollar siempre de manera organizada y sistemática. Adquirirá
destreza, experiencia y una facilidad casi automática para resolver errores.
• Hágalo bien desde el principio. Cree programas bien desarrollados, aunque se tarde
más; dice un dicho de mi tierra que "el flojo y el atenido trabajan dos veces".
Piense en el tiempo de desarrollo como la suma del tiempo de desarrollo más el
tiempo de mantenimiento; en ocasiones los trabajos de mantenimiento son
demasiado onerosos, y en otros casos, hasta imposibles.
• Consistencia cognoscitiva en comparación con ignorancia veloz. Con respecto al
aprendizaje del contenido de este libro, no olvide la parábola de la tortuga y la
liebre: no siempre el que corre más rápido llega primero a la meta. Comprenda los
temas hasta que sea capaz de explicarlos sin ayuda del libro, y tema por tema,
conviértase en un experto. Antes de mover los dedos, hay que mover las neuronas.
Visual Basic lleva en su nombre los dos elementos generales que lo conforman.
• Su parte "Visual" indica que es una interfaz gráfica de usuario (GUI), que en lugar de
requerir el uso de comandos escritos para realizar tareas, sólo requiere el uso de
herramientas gráficas, de tal forma que desarrollar se asemeja mucho a estar "dibujando"
el trabajo. Esta parte está compuesta por el IDE, que ocupa casi todo este capítulo.
• Su parte "Basic" indica que aquellas tareas que no se pueden realizar a través de las
herramientas gráficas (que no pueden ser dibujadas), son posibles a través de un
lenguaje de programación basado en el legendario lenguaje de propósito general
llamado Código de Instrucciones Simbólicas Multipropósito para Principiantes
(BASIC) con el que prácticamente se puede desarrollar cualquier cosa.
Visual Basic no es sólo producto, también es tecnología aplicada: su parte "Visual" está
basada en tecnología orientada a objetos (00), su parte "Basic" es de tipo procedural, y la
mezcla de estas dos tecnologías dan lugar a productos híbridos, orientados a eventos (EO).
Nota: Es el momento adecuado de que instale los archivos que complementan este
libro, mismos que se encuentran en el sitio Web
http://www.enlace.net/ramirez2; descargue el archivo AVBP.ZIP en el
directorio raíz de su disco duro, y ejecútelo para su instalación.
Nota: Visual Basic inicia una sesión mediante la ejecución del programa VB6.EXE;
si tiene definidos los accesos directos a Microsoft Visual Basic 6.0 y su computadora no lo
encuentra, puede buscar el programa ejecutable para iniciar la sesión. También puede estar
como miembro de un grupo de programas Microsoft Visual Studio 6.0; depende de su
instalación.
Figura 1.1
Ventana Nuevo
proyecto
2. En la ficha Nuevo, haga clic en el icono EXE estándar, que de manera predeterminada está
seleccionado.
3. Haga clic en el botón de comando Abrir.
menú Herramientas - Opciones... - Entorno, seleccionando la opción Preguntar por un proyecto del
área Cuando se inicie Visual Basic.
Nota: Aunque la documentación de Visual Basic hace referencia a los Libros en pantalla,
éstos no son parte del producto. En la versión 5.0, al momento de la instalación se generaba
dentro del menú de Microsoft Visual Basic 5.0 una opción que decía Libros en línea, que a
través de hipertexto dinámico proporcionaba la documentación del producto. En la versión 6.0,
tiene que instalar la MSDN Library Visual Studio 6.0 (otro producto) para disponer de ayuda.
MSDN Library es una referencia técnica muy completa, de más de 1 GB de información de los
productos que integran Visual Studio 6.0; si usted está dispuesto a consumir más de 1 GB en
información de Visual C++, Visual Basic 6.0, Visual InterDev, Visual FoxPro, Visual J++ y
Visual SourceSafe, adelante. Por otro lado, puede decidir que no desea información de
productos que no le interesan, e instalar sólo la ayuda de Visual Basic con la finalidad de no
consumir mucho espacio en disco. Esto es posible, pero se puede llevar la sorpresa de que
algunos componentes compartidos por varios productos no se integren si usted solicita instalar
únicamente información de Visual Basic. O instala toda la información de MSDN Library que
comparten todos los productos de Visual Studio 6.0, o corre el riesgo que algo que necesite
consultar no se encuentre instalado.
Nota: La distribución del IDE es bastante parecida en todos los productos de Visual Studio 6.0
(Visual C++, Visual InterDev, etcétera), así como en los módulos basados
10 Parte 1: Entorno Integrado de Desarrollo
en Visual Basic para Aplicaciones (nuevo manejo de macros de la Suite Microsoft
Office), por lo que identificarse con la distribución de los elementos para aprender
Visual Basic proporciona el beneficio adicional de reducir la curva de aprendizaje que
usted tendrá si desea aprender otras herramientas.
Figura 1.2
Entorno
Integrado de
Desarrollo
El IDE contiene todos los elementos y herramientas gráficas que Visual Basic pro-
porciona para desarrollar una aplicación.
No todos los elementos se requieren todo el tiempo, por lo que a través del menú Ver
puede decidir qué elementos desea utilizar, y por tanto, tener presentes en la pantalla.
Esto es importante porque en ocasiones el espacio en la pantalla es muy preciado.
Visual Basic respeta las preferencias del desarrollador, de tal forma que si distribuye en
la pantalla los elementos del IDE a su gusto, la próxima vez que inicie sesión en Visual
Basic, los elementos del IDE se encontrarán donde los dejó la última vez.
Nota: Observe detenidamente las figuras que aparecen a la izquierda de las op-
ciones que se encuentran en el menú Ver. Esto es importante porque dichas figuras
también se encuentran en la barra de herramientas, por lo que puede hacer clic en
ellas para activarlas en lugar de utilizar la barra de menús.
A continuación se definirán cada uno de los elementos del IDE, así como los con-
ceptos que están asociados con él y que son indispensables para comprender su uti-
lidad.
La barra de menús
La barra de menús (vea la figura 1.3) proporciona los menús que contienen
comandos que Visual Basic tiene disponibles para su uso en aplicaciones
desarrolladas, o para la administración de su propio entorno.
Figura 1.3
La barra
de menús
La barra de herramientas
La barra de herramientas (vea la figura 1.4) es un conjunto de botones que pro-
porcionan un acceso rápido a comandos más comunes que Visual Basic tiene dispo-
nibles para su uso en aplicaciones desarrolladas o para la administración de su
propio entorno.
Figura 1.4
La barra de herramientas
Figura 1.5
Formulario
Podemos configurar el entorno de Visual Basic de tal forma que resulte conveniente
para el trabajo, dependiendo de si elaboramos una aplicación SDI o MDI. Actual-
mente tenemos el entorno adecuado para MDI, pero los primeros programas que
desarrollaremos serán de un solo formulario, por lo que resultaría conveniente cam-
biar el entorno a SDI. De manera predeterminada Visual Basic se instala en MDI.
Figura 1.7
Mensaje de
Visual Basic
4. Haga clic en el botón de comando Aceptar cuando Visual Basic le informe que el
cambio de la opción MDI/SDI será efectivo la próxima vez que inicie el entorno
de desarrollo.
5. Cierre la sesión de Visual Basic.
6. Inicie Basic nuevamente una sesión en Visual.
7. ¿Qué cambios nota en el entorno?
Entre los beneficios que puede obtener al desarrollar en SDI, es que los elementos
del IDE se comportan como ventanas independientes de Windows, muy conveniente
si considera que en MDI el hecho de mover o cambiar el tamaño de los elementos en
ocasiones resulta un problema, pues se ajustan entre sí (se acoplan) de manera arbi-
traria y complican la distribución de los objetos en la pantalla.
Nota: El acople inesperado de los elementos del IDE, en SDI o MDI, se controla
desde el menú Herramientas - Opciones - Acople. El modo SDI se ajusta más a lo
que queremos del entorno de desarrollo en estos momentos; sin embargo, mantendre-
mos la configuración predeterminada de Visual Basic, es decir, MDI. Es sólo
cuestión de práctica dominar ambos modos.
16 Parte 1: Entorno Integrado de Desarrollo
Al inicio del capítulo decíamos que Visual Basic es una mezcla de tecnologías. La
más importante de ellas es la tecnología orientada a objetos, ya que en Visual Basic
todo termina siendo un objeto.
Aprendamos un poco al respecto, ya que nos ayudará mucho para entender cómo
desarrollar eficientemente utilizando Visual Basic. Esta práctica requiere de mucha
imaginación; de ser posible genere en su mente las imágenes de lo que vamos a men-
cionar a continuación.
• Usted está sentado en una silla, frente a un escritorio.
• Sobre ese escritorio se encuentran dos cosas: un sombrero de mago y un botón rojo.
• Al presionar el botón rojo que se encuentra sobre el escritorio, del sombrero del
mago sale un conejo. A dicho conejo usted le llama "Fred".
• Usted presiona nuevamente el botón rojo y sale otro conejo igual al anterior, al cual
usted llama "Angus".
• En este momento sobre el escritorio se encuentran dos conejos, de igual color, ta-
maño y peso (mismas propiedades), y éstos corren alegremente sobre el escritorio.
• Sólo los puede diferenciar por el nombre, pero como saltan de un lugar a otro, es
posible que en un momento determinado no sepa quién es Fred y quién es Angus.
• A usted le gustaría que Fred fuera más pequeño, y de otro color que Angus.
• Usted toca a Fred y como por arte de magia (y como en nuestra imaginación todo
es posible), Fred se transforma en un conejo más pequeño y de un color diferente
que el de Angus.
• Lo que sale del sombrero del mago cada que presiona el botón rojo es un animal
de una naturaleza bastante definida, en este caso, un Conejo. Decimos entonces
que Conejo es una clase.
• Debido a que se presionó dos veces el botón rojo, se generaron dos instancias de
la clase. A las instancias de una clase las llamamos objetos.
• La clase define todas las propiedades que heredarán los conejos, es por ello que
Fred y Angus son iguales, y sólo se diferencian por el nombre, ya que no
puede haber dos objetos con el mismo nombre.
Capítulo 1: Visual Basic como plataforma de desarrollo 17
• Fred y Angus no son inertes, por sí mismos hacen algo, a veces saltan en el escritorio.
Lo que ellos pueden hacer por sí mismos se le llama método. Los métodos que un
objeto puede realizar, son sólo aquellos que la clase tiene definidos y permitidos. Ni
Fred ni Angus pueden ladrar; no está en su clase.
• A Fred le sucedió una transformación, que no se llevó a cabo sino hasta que usted lo
tocó. Lo que le sucede a un objeto por el hecho de interactuar con usted, se le llama
evento. Los eventos que le pueden suceder a un objeto, son sólo aquellos que la clase
tiene definidos y permitidos.
• La clase Conejo existe, pero no se manifiesta sino a través de sus instancias, mismas
que son generadas solamente a través del uso del botón rojo. Si no se presiona el botón
rojo, no hay conejos en el escritorio. Al elemento que sirve para crear la instancia de
una clase se le denomina control.
• El escritorio sería el objeto contenedor de los objetos. Cumple con la misma función
que cumplirá el formulario en sus aplicaciones de Visual Basic.
Figura 1.8
Esquema de
clase – objeto-
propiedad
18 Parte 1: Entorno Integrado de Desarrollo
Controles
Los controles son representaciones gráficas que permiten generar elementos de inter-
faz de Windows, tales como botones de comando, cuadros de texto, gráficos, listas
desplegables, etiquetas, etcétera. Estos controles invocan una clase determinada, con
base en la cual se generan objetos con una forma y comportamiento predefinido. Los
controles en Visual Basic se encuentran en el elemento IDE llamado Cuadro de he-
rramientas.
Clase
Objetos
Los objetos son ocurrencias de una clase en un formulario. Son controles una vez que
son insertados en una aplicación; el desarrollador les dará las propiedades que necesite
y el comportamiento que requiera. Puede haber un solo control llamado
CommandButton, pero muchos objetos generados a partir de él, es decir, múltiples
botones en el formulario.
Por cuestiones prácticas, en ocasiones los términos control y objeto se utilizan como
sinónimos; es posible usarlos de esta manera, pero no pierda de vista que son dife-
rentes. Un control es un medio para generar un objeto; un objeto es una ocurrencia del
control (que a su vez es el ejercicio de una clase), con nombre, tamaño, colores y otras
especificaciones particulares.
Nota: No somos partidarios del uso como sinónimos de las palabras "Objeto" y
"Control", porque evidentemente no son lo mismo. No obstante. Visual Basic tiene
muchos mensajes del sistema que utilizan dichos términos como equivalentes, y en la
ayuda en línea en ocasiones los utilizan de manera indistinta.
Capítulo 1: Visual Basic como plataforma de desarrollo 19
Cuadro de herramientas
El Cuadro de herramientas (vea la figura 1.9) es la ventana que muestra todos los
controles disponibles para la generación de objetos en una aplicación de Visual Basic.
El Cuadro de herramientas debería llamarse cuadro de controles, pero por cuestiones
históricas del producto su nombre persiste.
Figura 1.9
Cuadro de
herramientas
Los controles están representados de manera gráfica; por ejemplo, el control Label
está representado por una letra "a" mayúscula (A).
Si desconoce qué representación gráfica le corresponde a un determinado control, sólo
coloque el puntero del ratón sobre las figuras del Cuadro de herramientas, y
aparecerá un texto identificando el control del que se trata. Dicho texto se conoce
como Información sobre herramientas.
Nota: Visual Basic tiene una capacidad de expansión increíble; tal vez su carac-
terística más sobresaliente, base de su éxito, sea la de integrar controles de terceros
20 Parte 1: Entorno Integrado de Desarrollo
(conocidos como controles ActiveX u OCX). Al integrar un control ActiveX, su repre-
sentación gráfica se agregará al Cuadro de herramientas, por lo que es comprensible
que la misma no siempre luzca igual.
Si tiene la necesidad de un control que no está en el Cuadro de herramientas, puede
buscar entre los controles ActiveX que tiene en su equipo, y si no lo tiene, puede com-
prar uno que alguien haya hecho (hay cientos en el mercado, casi siempre orientados a
una determinada función, como estadística, graficación, bases de datos, etcétera.) En el
peor de los casos, si el control que necesita no ha sido desarrollado por terceros o no
quiere pagar por él, tiene la opción de desarrollarlo usted mismo.
Aunque tal vez sobre decirlo, Microsoft no se hace responsable de los controles que no
vienen integrados en Visual Basic de manera intrínseca.
Label
TextBox
CommandButton
• Controles de selección: Definen objetos que permiten elegir un valor sin que sea
necesario teclear nada.
OptionButton
CheckBox
ComboBox
ListBox
HScrollBar
VScrollBar
Capítulo 1: Visual Basic como plataforma de desarrollo 21
Frame
• Controles gráficos: Definen objetos que permiten el manejo de gráficos e imágenes.
Image
Shape
Line
DriveLlstBox
DirListBox
FileListBox
• Controles de tiempo: Definen objetos que permiten manejar intervalos de ejecución
de una aplicación.
Timer
• Controles de datos: Definen objetos que permiten tener acceso a bases de datos.
Data
• Controles de vínculo: Definen objetos que permiten tener acceso otras aplicaciones o
funciones dentro del sistema.
OLE
22 Parte 1: Entorno Integrado de Desarrollo
Los controles que aparecen en el Cuadro de herramientas pueden incrementarse en la
medida en que se necesiten. En su momento verá cómo incluir algunos de suma
utilidad.
1. Si coloca el puntero del ratón sobre las imágenes del Cuadro de herramientas,
aparecerá información relativa al control del que se trata (esta información es llamada
Información sobre herramientas [vea la figura 1.10]).
Figura 1.10
Información sobre
herramientas: le
ayuda a identificar
los controles del
cuadro de
herramientas
Información sobre
herramientas
Capitulo 1: Visual Basic como plataforma de desarrollo 23
Propiedades
Cada uno de los objetos que conforman un formulario, desde el formulario mismo
hasta los botones de comando, cuadros de texto, botones de opción, cuadros de imá-
genes, y demás objetos contenidos en él, tienen características particulares que los
hacen diferentes uno de otro. A estas características se les llama propiedades; las
propiedades le indican a Visual Basic la posición de un objeto en el formulario, su
nombre, alto, ancho, comportamiento inicial, valor predeterminado, etcétera.
24 Parte 1: Entorno Integrado de Desarrollo
Quizá la propiedad más importante sea la que identifica a los objetos dentro de una
aplicación: Name. Esta propiedad permite referir a un objeto determinado al momento
de programar en Visual Basic.
Métodos
Los métodos son órdenes predefinidas que realizan tareas específicas sobre los objetos.
Los métodos son muy útiles porque permiten manipular los objetos y sus carac-
terísticas asociadas.
Los objetos se crean en tiempo de diseño y en tiempo de ejecución se modifican las
características de estos objetos (propiedades) y se ejecutan tareas sobre los objetos
(métodos).
Saxofón
Dicho objeto podría tener muchas características, tales como tamaño, color, marca,
etcétera. Actualmente aparece en color blanco, por lo que puede interpretarse que la
propiedad Color del objeto Saxofón es igual a Blanco.
Para Visual Basic eso se codificaría de la siguiente manera:
En Visual Basic es una regla de sintaxis que las propiedades se refieran en conjunto
con el objeto al que pertenecen y se separan por un punto. En elcaso "Saxofón.
Color", "Color" es la propiedad del objeto "Saxofón".
Los métodos se refieren de la misma forma que las propiedades, pero éstos en lugar de
establecer una característica para un objeto, realizan una tarea sobre o a través del
objeto. Un método posible a través del objeto Saxofón es que éste toque música.
Por ejemplo:
Saxofón.TocarMúsica
Explorador de proyectos
La ventana Explorador de proyectos es una ventana que muestra los componentes del proyecto
Visual Basic, llamados módulos. A través de esta ventana puede ubicar y activar cualquier
módulo del proyecto; esto es especialmente útil cuando el proyecto se hace muy grande y que
cuenta con muchos módulos, de tal manera que resulta incómodo tener presente a todos los
componentes del proyecto en la pantalla.
Los módulos que se pueden tener en la ventana Explorador de proyectos son:
• Módulos de formulario (extensión .FRM). Puede contener objetos y los valores de sus
propiedades. También puede contener declaraciones a nivel formulario
26 Parte 1: Entorno Integrado de Desarrollo
Figura 1.11
Ventana
Explorador
de proyectos
• Ver código. Permite ver el código que se ha escrito del módulo que está
seleccionado.
formulario se desplegará.
¿Cómo saber en qué tiempo se encuentra? Muy simple, si está utilizando el IDE con
la disponibilidad de todos los elementos para su uso, está en tiempo de diseño; si
está ejecutando un formulario y no dispone de todos los elementos del IDE para su
uso, está en tiempo de ejecución. Otra forma más fácil de saberlo es la siguiente: en
tiempo de diseño, en la ventana principal de Visual Basic aparecerá la palabra
"diseño". Más obvio no podía ser.
Hay cosas que sólo se pueden hacer en tiempo de diseño, por ejemplo, asignar el
nombre a los objetos, y hay otras cosas que sólo se pueden hacer en tiempo de
ejecución, como ver la Información sobre herramientas establecida para un
determinado objeto. En tiempo de diseño todo se hace visualmente, mediante el uso
de elementos del IDE, tales como el Cuadro de herramientas o la ventana
Propiedades; en tiempo de ejecución, todo se hace mediante el código que forma
parte del formulario.
Ventana Propiedades
Figura 1.12
Ventana Propiedades
En la parte superior de la ventana Propiedades siempre se muestra una lista desple-gable, llamada
Lista desplegable de objetos (vea la figura 1.13); esta lista contiene el nombre del objeto activo (que
se encuentra en negritas) y el tipo de control en el que está basado dicho objeto (Form).
Figura 1.13
Lista desplegable
de objetos
Figura 1.14
Cuadrícula de
propiedades
a) La ventana Propiedades
indica que está trabajando sobre
un objeto. ¿Cómo se llama?
(Identifíquelo por el texto en negritas en
la Lista desplegable de objetos;
también basta con ver el título de la
ventana Propiedades, que dirá
Propiedades - <nombre del objeto>.)
Capítulo 1: Visual Basic como plataforma de desarrollo 31
e) ¿La propiedad
Appearence es de valor
abierto o limitado?
Figura 1.15
Ventana posición
del formulario
Para desarrollar una aplicación en Visual Basic, desde no tener nada hasta tener los
discos de distribución de su aplicación, transcurren siete pasos básicos:
• Crear la interfaz de usuario. Consiste en dibujar la interfaz con la que el usuario
va a interactuar. En este paso, lo importante es colocar en la interfaz la cantidad
suficiente de objetos, con los tamaños adecuados y la organización óptima para que
su uso sea más fácil.
• Establecer las propiedades de los objetos. Consiste en asignar los valores de
inicio para cada uno de los objetos, mismos que determinan la apariencia y com-
portamiento de dichos objetos.
• Escribir el código de los eventos. Consiste en escribir el código que ha de eje-
cutarse como respuesta a algo que sucede en la interfaz del usuario.
• Guardar el proyecto. Consiste en guardar, en algún medio de almacenamiento, el
proyecto que esté creando. Guarde su trabajo con regularidad, a efecto de reducir al
máximo el riesgo de perderlo.
• Probar y depurar la aplicación. Consiste en ejecutar la aplicación que ha creado,
detectar errores y corregirlos.
Capítulo 1: Visual Basic como plataforma de desarrollo 33
________________________________________________________________________
Resumen
En este capítulo:
• Vimos cuál es el objeto de la programación.
• Vimos por qué Visual Basic es más que un simple lenguaje de programación.
• Vimos de manera esquemática los conceptos que definen la orientación a
objetos de Visual Basic.
• Identificamos todos y cada uno de los componentes del IDE y explicamos para
qué sirven (no se preocupe por saber cómo se utilizan; en los siguientes capítu-
los lo sabrá).
• Vimos qué ediciones tiene Visual Basic 6.0.
• Vimos qué controles se encuentran disponibles en el Cuadro de herramientas
y a qué categoría pertenecen.
• Vimos en qué consisten los modos SDI y MDI.
• Vimos cuáles son los tiempos de desarrollo en Visual Basic.
• Vimos los conceptos objeto, control, propiedad, método y la relación que
guardan entre ellos.
• Vimos cuáles son los pasos para desarrollar una aplicación en Visual Basic.
2
Creación de la interfaz
de usuario
Objetivo
Conocer los pasos para crear una interfaz de usuario efectiva para una aplicación
de Visual Basic.
Al finalizar este capítulo deberá:
• Saber cómo insertar objetos
• Saber cómo trazar objetos
• Conocer la forma de establecer la posición y las dimensiones de un objeto
• Conocer la forma en que se manejan las opciones del menú Formato
• Saber cómo manejar la ventana Posición del formulario
• Felicidades: comenzará a desarrollar su primer proyecto de Visual Basic
En este capítulo comenzará a desarrollar su primer programa; quizá piense "en
otros libros desde el primer capítulo se crea un programa". No se desespere: la
diferencia entre "copiar" un programa de un libro sin entenderlo y "hacer" un
programa es mucha. Preferimos que desarrolle una aplicación con todo el
conocimiento posible, de tal forma que pueda reproducir los procedimientos sobre
aplicaciones basadas en necesidades propias cuando así lo requiera.
Le aseguramos que una vez que haya visto los pormenores de la programación en
Visual Basic con el primer ejemplo, el libro tomará velocidad con respecto a los
demás
35
36 Parte 1: Entorno Integrado de Desarrollo
ejemplos, y lo mejor de todo, usted podrá ir a la misma velocidad que el libro, para
después ya no depender de él.
Para crear su aplicación, debe revisar el producto del análisis (saber qué quiere) y
comenzar el diseño.
Su primer programa será algo muy simple, pero que nos permitirá revisar todo el
proceso de desarrollo de aplicaciones en Visual Basic.
La figura 2.1 muestra la forma en que se debe ver la interfaz a diseñar.
Figura 2.1
interfaz a diseñar.
La figura 2.2 muestra lo que debe suceder cuando haga clic en el botón de comando
Mostrar Mensaje.
Figura 2.2
Respuesta
esperada al hacer
clic en Mostrar
Mensaje.
• Tener los tipos de objetos adecuados para hacer lo que se quiere con la apli-
cación. Los objetos creados a partir de un determinado control tienen una deter-
minada función (TextBox, introducir datos; OptionButton, seleccionar una
opción; Label. mostrar un texto, etcétera.). Pretender realizar con un objeto una
tarea contraria a su naturaleza puede complicar el uso de la interfaz; una mala
elección de objetos puede hacer de su labor de desarrollo una pesadilla; no hay que
pedirles a los controles un imposible. La pregunta básica aquí es: ¿en qué controles
nos basaremos para definir los objetos?
• Distribución funcional. Los objetos deben estar distribuidos de tal forma que
faciliten el uso de la interfaz. La pregunta básica aquí es: ¿la captura se realiza de
manera natural y sencilla? Responder "NO" a esta pregunta es inadmisible.
Inserción de objetos
1 Label
2 CommandButton
============================================================
Nota: Si hace un solo clic, también puede insertar objetos, en lo que se llama modo
de trazo. Dicho modo será explicado más adelante en este capítulo; si hizo un solo
clic en lugar de doble clic, seguramente el puntero del ratón es una cruz delgada, que
indica que está en modo de trazo. Cancele este modo haciendo clic en el control
Puntero del Cuadro de herramientas. El control Puntero es el único del Cuadro
de herramientas que no genera un objeto en la interfaz.
============================================================
Capítulo 2: Creación de la interfaz de usuario 39
Figura 2.3
Objeto insertado al
hacer doble clic en
el control
CommandButton
del Cuadro de
herramientas
Figura 2.4
Controladores
de tamaño
Arrastre hacia abajo para hacer
más ancho el objeto.
Arrastre hacia abajo para hacer Arrastre hacia abajo para hacer
más alto el objeto. más ancho y más alto el objeto.
Es un objeto basado en
el control
CommandButton.
El objeto activo será el que aparezca en la barra de título de la ventana Propiedades (en
este caso. Propiedades – Command1)
Figura 2.6
Propiedades
de posición
y dimensión de
los objetos
Capítulo 2: Creación de la interfaz de usuario 43
==================================================================
Lo inesperado: Puede ser que queriendo seleccionar el objeto Command1 a través de un
clic, haya hecho doble clic. Si hace eso, aparecerá la ventana Código.
Aunque dicha ventana es muy importante, no es lo que queremos analizar en este momento,
por lo que deberá cerrarla. Presione Alt+F4, en tal caso.
==================================================================
Command1.Top = _____________________
Command1.Height = _____________________
Command1.Width = _____________________
44 Parte 1: Entorno Integrado de Desarrollo
Command1.Height = _____________________
Command1.Width = _____________________
4. Coloque el puntero del ratón en el centro del objeto y arrástrelo de tal forma que el
punto de inicio (esquina superior izquierda) quede cerca de la esquina superior
izquierda del formulario. ¿Qué valores tienen ahora las propiedades de posición?
Command1.Top = _____________________
Command1.Left = _____________________
6. Presione la tecla Ctrl y manténgala presionada; al mismo tiempo utilice las teclas de
movimiento hasta dejar el botón de comando en la posición similar a la que tenía al
inicio de esta práctica. Suelte las teclas.
=============================================================
Nota: Una forma de "hacer clic en cualquier parte del formulario, que no sea la
barra de título y que no esté ocupado por otro objeto" es hacer clic en cualquier
pequeño punto de la cuadrícula estándar. Si puede ver el punto de la cuadrícula están-
dar, resulta obvio que no tiene un objeto que lo cubre.
=============================================================
Figura 2.7
Vista parcial
del formulario,
hasta este
momento
Aunque es muy poco lo que ha hecho hasta ahora (aunque es mucho lo que ha apren-
dido con ese "poco"), no hay nada que desmoralice más a un programador que perder su
trabajo y tener que volver a hacerlo. Aquí le diremos rápidamente cómo guardar su
trabajo, aunque este tema se trata con mayor profundidad en capítulos posteriores.
Ya vimos que agregar objetos en modo de inserción es muy fácil: haciendo doble clic
en cualquier control del Cuadro de herramientas. El problema es que siempre se
Capítulo 2: Creación de la interfaz de usuario 47
Figura 2.8
Adicion de un
Objeto en modo
De trazo
48 Parte 1: Entorno Integrado de Desarrollo
3. Acomode los botones de tal forma que queden más o menos a la misma altura, en la
parte inferior del formulario.
4. Trace el objeto Label arriba de los botones de control. La figura 2.9 muestra cómo
debe verse el formulario hasta el momento. De manera predeterminada, Visual Basic
le asigna nombres a cada uno de los objetos, en este caso, los nombres asignados a
cada objeto son visibles: Form1, Label1. Command1 y Command2.
Deliberadamente el objeto Command2 fue definido más grande que Command1.
Figura 2.9
Vista parcial
del formulario,
hasta este
momento
4. Seleccione en modo de grupo a los dos botones de comando; tiene dos opciones para
hacerlo. La primera, seleccione el botón de comando Command1 . presione la tecla
Mayús y no la suelte, haga clic en el botón de comando Command2 . suelte la tecla
Mayús. La segunda, trazando un cuadro o línea imaginaria que abarque el área que
ocupan los dos botones de comando. La figura 2.10 muestra cómo se ve su
formulario cuando selecciona en modo de grupo los objetos Command1 y
Command2 .
50 Parte 1: Entorno Integrado de Desarrollo
Name = _________________
CausesValidation= _________________
¿Por qué cree que la propiedad Name ya no está disponible y CausesValidation sí?
6. Presione la tecla Mayús y sin dejar de presionarla haga clic en el objeto Label1.
7. Vea en la ventana Propiedades. ¿Qué valor tiene la propiedad Name y la propiedad
CausesValidation?:
Name = _________________
CausesValidation= _________________
Capítulo 2: Creación de la interfaz de usuario 51
Hasta el momento ya sabe seleccionar, cambiar el tamaño y mover los objetos. Lo que
no
ha visto es cómo determinar la posición de un formulario. Para ello, utilice la ventana
Posición del formulario.
1. Seleccione el formulario.
2. Vea qué valores tiene actualmente:
Form1.Top = ______________________
Form1.left = ______________________
Figura 2.11
Ventana Posición
del formulario
Form1.Top = ______________________
Form1.left = ______________________
============================================================
LO inesperado: Es posible que no aparezca formulario alguno en la ventana
Posición del formulario. Seleccione el menú Ejecutar - Iniciar (también puede opri-
mir la tecla F5). Esto provoca que su aplicación se ejecute (se coloque en tiempo de
ejecución); lo que su formulario haga en este momento no es relevante. Seleccione el
menú Ejecutar - Terminar (regresa a tiempo de diseño).
La ventana Posición del formulario deberá mostrar ya la representación de su for-
mulario.
============================================================
Recuerde que sugeríamos un monitor más grande (17" o 19") para desarrollar cómo-
damente. Seguir esa recomendación puede llevarlo a una involuntaria pérdida de per-
spectiva: con seguridad los usuarios finales de la aplicación dispondrán de un monitor
más reducido. Para asegurarse de que su aplicación tiene las dimensiones adecuadas
para los diferentes tipos de monitores y resoluciones que existen en el mercado, la
ventana Posición del formulario puede ayudarle, si establece lo que se conoce como
Guías de resolución, que sugieren las dimensiones de su aplicación, comparada
relativamente con el espacio de trabajo de las resoluciones más comunes de los
monitores actuales.
Figura 2.12
La opción Guías
de resolución
3. En la figura 2.13 se muestra la forma en que se han agregado las Guías de resolución.
Ahora podrá dimensionar su aplicación, de acuerdo con el espacio real que el usuario
final puede tener.
Figura 2.13
Guías de reso-
lución en la
ventana Posición
del formulario
54 Parte 1: Entorno Integrado de Desarrollo
>>Cómo utilizar las herramientas del menú Formato para organizar objetos. [02.10]
A continuación aprenderá a organizar los objetos con las herramientas que Visual
Basic tiene en su menú Formato. También aprenderá por qué es importante el orden
en que los objetos sean seleccionados.
1. Seleccione el objeto Label1y el menú Formato - Centrar en el formulario —
Horizontalmente,
2. Seleccione en modo de grupo los objetos Command1 y Command2. Asegúrese de
que Command1 , que es el botón de comando más grande, quede como objeto prin-
cipal del grupo (controladores de tamaño en azul).
3. Seleccione el formulario, lo que implica dejar de tener seleccionados los botones de
comando.
4. Haga clic en el objeto Command1 , presione la tecla Mayús y no la suelte, haga clic
en el objeto Command2, deje de presionar la tecla Mayús. Los controladores de
tamaño del objeto Command1 deberán ser blancos, mientras que los del objeto
Command2 son azules. El último objeto integrado al grupo permanece como objeto
principal de grupo.
5. Seleccione el menú Formato - Igualar tamaño - Ambos. Observe que los objetos
del grupo siguen las características del objeto principal del grupo.
6. Deshaga la modificación que acaba de realizar. Para ello seleccione el menú Edición
- Deshacer tamaño (también puede presionar Ctrl+Z).
7. Para seleccionar otro objeto como objeto principal de grupo, haga clic en el objeto
que desee como objeto principal del grupo. Teniendo seleccionados en modo de
grupo a los objetos Command1 y Command2. haga clic en el objeto Command1 .
Los controladores de tamaño del objeto Command2 deberán ser blancos, mientras
que los del objeto Command1 deberán ser azules.
8. Seleccione el menú Formato - Igualar tamaño - Ambos. Observe que los objetos
del grupo siguen las características del objeto principal del grupo.
9. Todavía teniendo los objetos Command1 y Command2 seleccionados en modo de
grupo, seleccione el menú Formato - Espacio horizontal - Aumentar.
10. Seleccione el menú Formato - Bloquear controles.
11. Trate de mover cualquier objeto dentro del formulario. Comprobará que no se
puede; asimismo, cada que seleccione un objeto, los controladores de tamaño no
serán azules como lo eran antes, ahora son blancos.
12. Seleccione el menú Formato - Bloquear controles. Se deshabilitará el bloqueo de
los objetos; ahora ya podrá moverlos.
13. Su formulario deberá verse aproximadamente como se muestra en la figura 2.14.
Capítulo 2: Creación de la interfaz de usuario 55
Figura 2.14
Vista parcial
del formulario
hasta este momento
____________________________________________________
Resumen
En este capítulo:
• Vimos cuáles son los objetivos que se persiguen al crear una interfaz de
usuario.
• Vimos cómo se insertan objetos en un formulario.
• Vimos cómo se agregan objetos a un formulario en modo de trazo.
• Vimos qué son los controladores de tamaño.
• Vimos qué es un objeto activo, la selección de un objeto, la selección de
objetos en modo de grupo y el establecimiento de un objeto como principal
del grupo.
• Vimos cómo mover y darle dimensión a los objetos.
• Vimos cómo establecer la posición de un formulario en la pantalla.
• Vimos para qué sirven las opciones del menú Formato de Visual Basic.
• Vimos cómo guardar nuestro trabajo.
3
Cómo establecer
las propiedades
de los objetos
Objetivo
57
58 Parte 1: Entorno Integrado de Desarrollo
1n Label
2 CommandButton
60 Parte 1: Entorno Integrado de Desarrollo
Debe verificar que efectivamente en este momento tiene en el formulario todos los
objetos requeridos; debe tener la cantidad suficiente de objetos que le permita cubrir
las especificaciones del diseño, de tal forma que exista un balance exacto entre la
estética y la funcionalidad, con aplicación estricta de los estándares de todo programa
basado en Windows.
============================================================
Nota: Uno de los atributos del entorno de Windows es que la interfaz de los
programas cuenta con convencionalismos de funcionalidad que permiten que una
persona, una vez que aprenda a manejar un programa, pueda manejar cualquier otro;
todos se parecen.
Usted puede hacer magia con la interfaz, pero si no se apega a los estándares de Win-
dows será un programa incómodo para los usuarios. Uno de los atributos más valio-
sos de la interfaz de una aplicación es que sea fácil de usar y de aprender.
No rompa paradigmas de manera radical, a menos que sea estrictamente necesario.
============================================================
Aparte de tener el número correcto de objetos, es muy importante que sean el tipo de
objeto que necesita. Un error frecuente al desarrollar en Visual Basic es confundir los
controles, por ejemplo agregar al formulario un objeto basado en el control
TextBox en lugar de un objeto que debió estar basado en el control Label.
¿Qué pasará si hace esto? Al codificar hará referencia a propiedades del objeto tipo
Label creyendo que tiene uno de ese tipo definido en el formulario. En el momento
en que haga referencia a una propiedad que no esté disponible para el objeto que
definió (TextBox), su programa marcará error.
Si incurre en este error, necesita eliminar el objeto equivocado y agregar el correcto.
Esto es trabajo extra que puede ahorrarse con una verificación sencilla, que no le
quita mucho tiempo y que debe establecer en su forma de trabajo como un hábito útil
para la programación en Visual Basic.
Evite ese trabajo extra verificando desde un principio si tiene los objetos que requie-
re, en cantidad y tipo. La lista desplegable de objetos de la ventana Propiedades
sirve para tal efecto.
>> Cómo validar la cantidad y el tipo de objetos requeridos en una aplicación. [03.01]
A continuación aprenderá a verificar cuántos objetos tiene definidos en un formulario
y de qué tipo son.
1. Seleccione el formulario. Para ello haga clic en cualquier parte del formulario que
no sea la barra de título y que no esté ocupada por otro objeto. Otra forma de
decirlo, haga clic en cualquier punto de la cuadrícula.
2. Haga clic en la lista desplegable de objetos de la ventana Propiedades. La figura
3.1 muestra cómo se debe desplegar la información.
Capítulo 3: Cómo establecer las propiedades de los objetos 61
Figura 3.1
Verificación de haciendo clic en esta
la cantidad de lista, aparecerán todos
obetos y sus los objetos que
componen el
tipos, utilizando
formulario, incluyendo
la Lista el objeto contenedor
desplegable de
objetos
• Si tiene la cantidad de objetos correcta, pero uno no es del tipo que esperaba.
Deberá seleccionar el objeto basado en un control equivocado, y eliminarlo
presionando la tecla Supr; posteriormente deberá agregar el objeto que haga falta
con el tipo de control correcto.
Ya hemos visto que Visual Basic asigna un nombre predeterminado a cada uno de los
objetos que es agregado al formulario, a través de la propiedad Name (Form1,
Label1, Command1. Command2. son ejemplos de ello).
============================================================
Nota: Un solo proyecto puede contener hasta 32,000 "identificadores" (cualquier
palabra clave no reservada), asociados a nombres de formularios, controles, módulos,
variables, constantes, procedimientos, funciones y objetos. El número real de identi-
ficadores se limita a la memoria disponible.
============================================================
Texto
Capitulo 3: Cómo establecer las propiedades de los objetos 63
Sin embargo, este nombre por sí mismo no proporciona información relativa al control
sobre el cual está basado el objeto; podría ser un objeto basado en el control Label. por
lo que para desplegar un mensaje tendría que modificar la propiedad Caption; pero
también podría ser un objeto basado en el control TextBox, por lo que para desplegar
un mensaje tendría que modificar la propiedad Text. Si no conoce con exactitud el tipo
de control sobre el cual está basado el objeto, podría utilizar propiedades que no se
apliquen a un objeto (por ejemplo, modificar la propiedad Text de un control un
Label, o la propiedad Caption de un control un TextBox), lo que generaría un error
en tiempo de ejecución.
¿Qué le parece este otro nombre para el objeto?
lblTexto
El prefijo lbl indica que el objeto está basado en el controLabelbel, y por otro lado,
el resto del nombre (Texto) nos da una idea en relación con el uso del objeto.
En Visual Basic se tienen las siguientes convenciones para los objetos:
64 Parte 1: Entorno Integrado de Desarrollo
Capítulo 3: Cómo establecer las propiedades de los objetos 65
A medida que vaya conociendo más controles agregará las convenciones de prefijos para
cada uno de ellos. Revise el apéndice 1: Convenciones, para ver la lista completa de
prefijos, entre otras cosas.
La propiedad Name de un objeto, al igual que los nombres de variables de memoria en
Visual Basic, debe comenzar con una letra y puede tener un máximo de 40 caracteres.
Puede incluir números y caracteres de subrayado (_), pero no signos de puntuación,
espacios en blanco, caracteres compuestos o caracteres especiales. Le recomendamos el
uso sólo de letras, números y el carácter de subrayado. Un formulario no puede tener el
mismo nombre que otro objeto público como Clipboard, Screen o App.
Aunque el valor de la propiedad Name puede ser una palabra clave, un nombre de
propiedad o el nombre de otro objeto, esto puede crear conflictos en el código.
===============================================================
Lo inesperado: Si por equivocación intenta ponerle a un objeto un nombre ya
utilizado por otro objeto, Visual Basic asume que desea crear una matriz de controles
(varios objetos identificados por un mismo nombre, diferenciados por un subíndice). La
utilidad de una matriz de controles se verá en otro capítulo; si por descuido intenta en
este momento repetir nombres, cuando Visual Basic le pregunte ¿Desea crear una matriz
de controles?, conteste No. Este es uno de los casos en que Visual Basic utiliza el
término "controles" cuando debería utilizar "objetos".
===============================================================
===============================================================
Nota: Las propiedades se asignan cuando presiona la tecla Intro, o bien cuando traslada
el control hacia otra propiedad u objeto; se dice que la propiedad se acepta. Mientras no
acepte un nuevo valor para una propiedad, puede presionar la tecla Esc y dar marcha atrás
a los cambios que haya realizado.
===============================================================
• Busque en la cuadricula de propiedades la propiedad que desea modificar. Haga doble clic en
el nombre de la propiedad que desea modificar (columna izquierda de la cuadrícula de
propiedades).
• Escriba o seleccione el valor deseado.
===================================================================
Nota: Un formulario es un objeto contenedor (es decir, puede contener objetos basados en otros
controles); existe un límite fijo de 254 nombres diferentes de objetos.
===================================================================
Ejemplo:
Usted quiere establecer, para la propiedad Caption del objeto frmMensaje, la siguiente
expresión: Mensaje.
Sintaxis:
Objeto.Propiedad = ValorAEstablecer
Ejemplo:
frmMensaje.Caption = "Mensaje"
dice lo siguiente:
===================================================================
Nota: Si el título de la ventana Propiedades no dice Propiedades - frmMensaje, quiere decir
que usted está modificando las propiedades de otro objeto. Ese es el primer paso para arruinar el
funcionamiento de su aplicación. Cerciórese de que está modificando las propiedades del objeto
que realmente desea afectar.
===================================================================
Capítulo 3: Cómo establecer las propiedades de los objetos 69
4. Seleccione el valor 2- Center Screen. Esto sería en tiempo de diseño; en tiempo de ejecución
el código que modificaría la propiedad sería:
frmMensaje.StartUpPosition = 2
===================================================================
Nota: StartUpPosition es un ejemplo de aquellas propiedades que se ven afectadas por
otros movimientos y asignaciones realizadas posteriormente. StartUpPosition con valor
2 establece que al cargarse el formulario para su ejecución, éste se colocará exactamente en el
centro de la pantalla. Si después de haber colocado dicho
70 Parte 1: Entorno Integrado de Desarrollo
valor a la propiedad usted mueve el formulario de posición, ya sea arrastrando el formulario por
su barra de título o utilizando la ventana Posición del formulario, la propiedad cambiará de
forma automática a O (Manual).
Al ejecutar la aplicación se preguntará ¿por qué no se colocó en el centro si yo se lo especifiqué?
Simplemente porque hizo algo en tiempo de diseño que ocasionó modificaciones automáticas en
la propiedad que así lo establecían.
===================================================================
5. Seleccione el objeto indicado, en este caso lblTexto. (La ventana Propiedades debe decir
en su barra de título Propiedades - lblTexto.)
6. Localice en la cuadrícula de propiedades la propiedad Caption, haga doble clic en el
nombre de la propiedad, y presione la tecla Supr para eliminar el contenido; acepte la
propiedad. En tiempo de ejecución el código que modificaría la propiedad sería:
lblTexto.Caption = ""
8. Seleccione el objeto indicado, en este caso cmdDespliega. (La ventana Propiedades debe
decir en su barra de título Propiedades - cmdDespliega.)
9. Localice en la cuadrícula de propiedades la propiedad Caption, haga doble clic en el
nombre de la propiedad, escriba &Mostrar Mensaje. Esto sería en tiempo
Capítulo 3: Cómo establecer las propiedades de los objetos 71
===================================================================
Nota: Al establecer la propiedad Caption de los objetos, anteponer a cualquier letra un signo
"&" hace que dicha letra sea asignada como tecla de método abreviado. En tiempo de
ejecución, presionar Alt+<letra> es lo mismo que seleccionar el objeto por otro medio.
Es importante que planee las teclas de método abreviado, a efecto de que no tenga dos iguales
en un mismo formulario.
===================================================================
Debido a que es poco usual tener un botón de comando con dos líneas de contenido, es
recomendable ampliar el tamaño del objeto.
===================================================================
Nota: Los objetos deben tener el tamaño suficiente en relación con su contenido. Si el
contenido excede el tamaño del objeto, dicho contenido se truncará o se dividirá. En el caso
de nuestro ejemplo, el contenido se dividió en dos líneas.
===================================================================
72 Parte 1: Entorno integrado de Desarrollo
11. Localice en la cuadrícula de propiedades la propiedad Width, haga doble clic en el nombre
de la propiedad, escriba 1500. Esto sería en tiempo de diseño; en tiempo de ejecución el código
que modificaría la propiedad sería:
cmdDespliega.Width = 1500
12. Con este cambio, el tamaño de los botones de comando queda desproporcionado. Para
corregir el problema seleccione en modo de grupo los objetos cmdDespliega y cmdSalir,
cuidando que el objeto cmdDespliega sea el objeto principal del grupo; después seleccione
el menú Formato - Igualar tamaño - Ambos. Los dos botones de comando deben tener
establecida su propiedad Width a 1500 twips.
13. Seleccione el objeto indicado, en este caso cmdSalir. (La ventana Propiedades debe decir
en su barra de título Propiedades - cmdSalir.)
14. Localice en la cuadrícula de propiedades la propiedad Caption, haga doble clic en el
nombre de la propiedad, escriba &Salir. Esto sería en tiempo de diseño; en tiempo de
ejecución el código que modificaría la propiedad sería;
cmdSalir. Caption = "&Salir"
15. Como ya no hay más modificaciones de tamaño ni de dimensión, se recomienda bloquear los
controles para no mover de manera involuntaria la interfaz que ya creó. Seleccione el objeto
frmMensaje y el menú Formato - Bloquear controles.
Sugerir los objetos y las propiedades a utilizar, así como los valores que deberán asignarse en
tiempo de diseño a las propiedades, puede ser algo muy complejo si se realiza de manera
narrativa, como tal vez lo haya notado en la práctica 03.03.
Para simplificar el proceso, recurriremos a una alternativa esquemática: una tabla en donde se
listará lo siguiente:
• Contenedor. La identificación del objeto sobre el que deberá trabajar.
• Objeto. Indica en qué clase ha de basarse el objeto a integrar a la interfaz.
• Propiedad. Indica la propiedad que ha de modificarse en tiempo de diseño.
• Valor. Representa el valor que debe asignarse a la propiedad.
• Orden. El orden en que se mencionan los objetos en la tabla, es el sugerido para la interfaz.
A esta tabla la llamaremos tabla de objetos y propiedades; vea cómo quedaría la tabla de objetos
y propiedades para la aplicación que hemos estado desarrollando:
Formulario: frmMensaje.frm
En este capítulo:
• Vimos que algo simple en teoría, se puede complicar al especificar el diseño de la aplicación.
• Vimos cómo validar la cantidad y tipos de objeto que se requieren para una aplicación.
• Vimos cómo establecer el valor de la propiedad de identificación.
• Vimos cómo utilizar la ventana Propiedades.
• Vimos las convenciones para identificar objetos en Visual Basic, atendiendo a la función y el
tipo de control en el que están basados los mismos.
• Vimos cómo establecer valores a las propiedades de apariencia y comportamiento, tanto en
tiempo de diseño como en tiempo de ejecución.
• Vimos cómo se conforma una tabla de objetos y propiedades, herramienta que nos será de
mucha utilidad en el desarrollo de programas detallados de este libro.
Es importante que comprenda muy bien todos estos puntos antes de continuar con el libro.
Capítulo
4
Escritura del código
de los eventos
Objetivo
Conocer la forma en que el código de programación es escrito y ejecutado en Visual Basic.
75
76 Parte 1: Entorno Integrado de Desarrollo
===============================================================
Nota: No descarte algunos otros dispositivos de entrada, tales como lectores de código
de barras, tarjetas electrónicas, etcétera.
===============================================================
Dependiendo de la clase o el control en el que esté basado un objeto, serán los eventos
disponibles para dicho objeto.
El código de una aplicación de Visual Basic se divide en bloques menores llamados
procedimientos, que no son otra cosa que un conjunto de órdenes que se ejecutan de
manera secuencial, que tienen un nombre, un principio y un fin. Un procedimiento
Capítulo 4: Escritura del código de los eventos 77
Objeto_Evento
Ejemplo:
CmdDespliega_Click
Volviendo a los requerimientos del ejemplo que nos ha acompañado en los primeros capítulos de este
libro, necesitamos de la aplicación lo siguiente:
• Hacer clic en el botón de comando Mostrar Mensaje debe provocar que en la etiqueta que sirva para
mostrar el mensaje aparezca ¡¡¡Bienvenido a Visual Basic!!!
• Hacer clic en el botón de comando Salir debe provocar la salida de la aplicación (terminación de la
ejecución).
Se ve simple. Analicémoslo.
n Todos los procedimientos de evento tienen un inicio (Sub) y un fin (End Sub). El
inicio y el fin delimitan la totalidad del código que se va a ejecutar cuando suceda el
evento.
oEl evento Click existe para todos los objetos que lo permiten. Por tal motivo, es
necesario identificar a qué objeto le sucede el evento.
El nombre del procedimiento de evento siempre estará compuesto por el nombre del
objeto ...
===============================================================
Nota: Es posible que antes de la palabra Sub, en el inicio del procedimiento aparezca
automáticamente Private o Public, que indica el alcance del procedimiento.
Analizaremos posteriormente el alcance de los procedimientos.
===============================================================
Sub cmdDespliega_Cllck()
End Sub
frmMensaje.Caption = "Bienvenida"
Sub cmdSalir_Cllck()
End
End Sub
===============================================================
Nota: Por expresión se debe entender todo valor o referencia de un valor:
• "A" & "B" (concatenación) es una expresión de tipo carácter que equivale a
"AB".
• 20/5 (división) es una expresión numérica que equivale a 4.
• 5 > 3 (comparación) es una expresión lógica que es True (verdadera).
===============================================================
Es importante comprender estos dos conceptos en virtud de que los errores en Visual
Basic serán violaciones a las reglas sintácticas o semánticas. Los errores de sintaxis no
deben preocuparle, ya que Visual Basic los reconoce en el mismo instante en que los
comete y le sugiere corregirlos, pero los errores de semántica pueden convertirse en
verdaderos dolores de cabeza, ya que son difíciles de identificar; es una buena práctica
que documente sus desarrollos a efecto de evitar errores.
En Visual Basic sólo podrá incluir como código instrucciones y funciones del lenguaje,
funciones y procedimientos definidos por el usuario, operadores y expresiones, cuidando
siempre la sintaxis y la semántica.
Al editor de código de Visual Basic se le llama ventana Código; ésta se puede utilizar
para escribir, mostrar y editar código de Visual Basic. El código de Visual Basic está
asociado a un módulo, por lo que puede abrir tantas ventanas Código como módulos
tenga, lo que facilita ver el código en diferentes formularios o módulos y copiarlo y
pegarlo entre ellos. En estos momentos, en su proyecto sólo tiene un módulo creado, que
es el formulario mismo.
Puede abrir una ventana Código:
===============================================================
Nota: En Visual Basic, aquel objeto o elemento que posee el cursor (que puede res-
ponder al teclado) tiene el enfoque.
===============================================================
Capítulo 4: Escritura del código de los eventos 83
4. Haga clic en el botón Ver módulo. Se mostrarán todos los procedimientos defi-
nidos hasta el momento.
5. En el cuadro Objeto seleccione el objeto cmdSalir.
6. En el cuadro Procedimiento/Evento seleccione LostFocus.
7. Arrastre la barra de división hasta que quede a la mitad de la ventana Código.
Debe verse aproximadamente como se muestra en la figura 4.5.
===============================================================
Nota: La ventana Código tiene la misma funcionalidad que cualquier editor de texto
basado en Windows, por lo que seleccionar texto, eliminar, copiar, pegar, reemplazar,
etcétera, se realiza de la misma forma que si lo estuviera haciendo en Word, WordPad o
Notepad.
===============================================================
Caracteres especiales
Antes de que comencemos con la edición de código, es recomendable que sepa la exis-
tencia de caracteres especiales con significado en el lenguaje de Visual Basic.
• Apóstrofe (‘). Todo el código que continúe en la misma línea (hasta encontrar fin de
línea) será interpretado como comentario.
• Comillas dobles ( “ ”). Siempre engloban una expresión de tipo carácter, por lo que
siempre que abra unas comillas, tendrá que cerrarlas.
• Carácter de subrayado ( _ ). Es el continuador de línea de Visual Basic. Antes de
éste siempre debe haber cuando menos un espacio en blanco, y después de éste nunca
debe haber nada, o de lo contrario se generará un error.
Color: ______________
¿Por qué?
________________________________________________________
===============================================================
Nota: En Visual Basic una línea de código no es evaluada y aceptada hasta que cambia
de línea, ya sea utilizando las flechas de dirección o la tecla Intro.
===============================================================
¿De qué color se puso la línea y por qué tiene ese color?
Color: ______________
¿Por qué?
________________________________________________________
3. Teclee la siguiente línea de código debajo del comentario que acaba de escribir
(escríbalo todo en mayúsculas).
BEEP
MiObjeto.
2. Ahora sí, acepte la línea (utilice las flechas de dirección o Intro para pasar a la siguiente
línea). Visual Basic detecta un error de sintaxis y envía un error, como se muestra en la
figura 4.7. Observe que la línea que causa el error se pone en rojo; cualquier línea en
rojo en modo de edición de código es sinónimo de problemas.
LblTexto.
88 Parte 1: Entorno Integrado de Desarrollo
Observe que al llegar al punto, Visual Basic determina que efectivamente existe un
objeto llamado lblTexto, identifica en qué tipo de control está basado el objeto
(Label) y muestra todas las propiedades y métodos válidos para dicho control (vea la
figura 4.8) a través de un cuadro de lista combinado de sugerencias. Vea que de
momento no está seleccionada ninguna propiedad o método de la lista.
2. En cuanto comience a teclear un poco más, alfabéticamente se ubicará en la lista la
propiedad o método que corresponda con lo que está tecleando (vea la figura 4.8).
Proyect
3. Continúe tecleando en la misma línea lo siguiente:
lblTexto.Ca
6. Termine de capturar, de tal forma que la línea completa quede como se muestra a
continuación:
Por ejemplo, cada objeto creado basado en el control CommandButton tendrá como
evento predeterminado al evento Click; ¿para qué puede servir un botón, si no es para
hacer clic en él?
>> Uso de los cuadros Objeto y Evento para la selección y codificación de un proce-
dimiento de evento determinado. [04.06]
Beep
End Sub
Capítulo 4: Escritura del código de los eventos 91
End Sub
¿Fue necesario hacer doble clic en el objeto lblTexto, en tiempo de diseño en el for-
mulario para poder editar su código?
____________________
¿Por el hecho de haber solicitado editar código para el objeto lblTexto, el objeto
cmdDespliega dejó de estar seleccionado?
____________________
Beep
lblTexto.Caption = _
"¡¡¡Bienvenido a Visual Basic!!!"
End Sub
===============================================================
Lo inesperado: En la figura 4.3 se mostró el esquema de un procedimiento de
evento. En dicha figura no se hace referencia a la palabra Private, que como vemos en
los subsecuentes ejemplos, sí aparece. Esa palabra se agrega de manera predeterminada e
indica el alcance del procedimiento; no es obligatoria. Con o sin la indicación Private,
el procedimiento funciona; quisimos dejarla para que no se sorprenda cuando la vea.
===============================================================
End
End Sub
5. ¿Para qué sirve la instrucción End? Para saberlo, coloque el cursor exactamente sobre la
palabra End( entre la "E" y la "n" estaría bien). Presione F1. Aparecerá la ventana de
ayuda de Visual Basic con la ayuda relativa a la orden. Si tiene dudas de alguna
instrucción o función, esta ayuda contextual puede ser de gran utilidad. Cierre la
ventana de ayuda presionando Alt+F4. En este caso, End termina con la ejecución de
la aplicación.
94 Parte 1: Entorno Integrado de Desarrollo
Una de las cosas más importantes al estar codificando en Visual Basic es la de dar már-
genes a la izquierda, a lo que se llama sangría. Vea lo siguiente:
Observe que la distribución A deja en claro cuál es el código de evento, dónde inicia y
dónde termina el procedimiento. La distribución B es más confusa, y una vez teniendo más
procedimientos y estructuras de control en el código, el problema se complica.
Al estar detallando los ejemplos en este libro, pondremos las tabulaciones ideales;
trate de escribir el código tal y como aparece en el texto. Aunque en este libro también
ponemos la línea de inicio y de conclusión del procedimiento (Sub, EndSub), usted no
tendrá que teclear esas líneas, pues Visual Basic las escribe automáticamente.
Con ello asumimos que no tendremos que repetir que en caso de que no se encuentre en la
ventana Código, es necesario que la abra; asimismo, no será necesario que le digamos a
detalle cómo llegar a editar el procedimiento de evento mencionado para el objeto referido.
Estamos seguros de que está de acuerdo con nosotros en que entender de una vez esto le
puede ahorrar mucha lectura de lo que ya resulta obvio. Después de todo, siempre sabrá
qué objeto es el que desea codificar, y en qué evento.
También sabemos que todo procedimiento tiene inicio y fin:
End
End Sub
Por lo tanto no es necesario que coloquemos las líneas de inicio y fin todo el tiempo; por
ejemplo, para obtener el código anterior sería suficiente lo que se muestra a continuación:
End
También será necesario, con aquellos procedimientos muy largos, agregar código después
de la última línea que hayamos codificado; para ello haremos la referencia:
Que indica que continuaremos codificando después de la última línea que hayamos
codificado del procedimiento en cuestión.
En caso de que necesitáramos agregar código en una parte que no está después de la última
línea codificada, haremos la siguiente referencia:
Se hace la referencia del evento a modificar, se escriben las líneas que se mantienen
intactas en letra normal, y lo que se modifica se pone en negritas.
Especificaciones de codificación
Será la forma en que se codificarán los programas en este libro. Las especificaciones de
codificación estarán integradas por las siguientes partes:
• Identificación del módulo (formulario) sobre el que hay que trabajar.
• Especificación de código a agregar. Abrir la ventana Código, seleccionar el objeto del
que desea editar un procedimiento de evento, a través del cuadro Objeto; seleccionar el
evento en el que desea agregar código de evento, a través del cuadro
Procedimiento/Evento. Escribir el código de evento.
• Especificación de código a editar. Seleccionar el procedimiento de evento que está
inconcluso, y continuar con la codificación.
• Especificación de código a modificar. Seleccionar el procedimiento de evento que se va a
modificar, haciendo los cambios deseados.
Capítulo 4: Escritura del código de los eventos 97
Codificación de frmMensaje
End
Cada objeto, dependiendo del control sobre el que esté basado, tendrá un procedimiento de
evento predeterminado que se editará con el simple hecho de que invoque la ventana
Código cuando el objeto está seleccionado.
Sin embargo, hay ocasiones en las que no se desea editar un determinado procedimiento
que Visual Basic coloca de manera predeterminada al invocar la ventana Código. Quizá
resulte molesto tener que eliminar procedimientos que usted no haya agregado La figura
4.5 muestra muchos procedimientos que realmente no se utilizan.
__________________________________________________________________________
Resumen
En este capítulo:
• Vimos qué son los eventos y los procedimientos de evento. ,
• Vimos qué nomenclatura se aplica a los procedimientos de evento.
• Vimos la utilidad de las herramientas que están integradas en la ventana Código.
• Vimos los elementos que componen a la ventana Código.
• Vimos qué caracteres especiales tienen significado particular en la codificación en Visual
Basic.
• Vimos la asistencia en modo de edición, mediante colores.
• Vimos la asistencia en modo de edición, a través de sugerencias de propiedades y
métodos.
• Vimos la importancia de la distribución del código para que éste sea legible.
• Establecimos convenciones para utilizar en el resto del libro.
Es muy importante que domine todos los puntos antes mencionados, para que el proceso de
codificación sea lo más asistido posible.
1. Click
4. Click está en negritas y GotFocus no lo está.
6. Si está en negritas indica que el evento para el objeto en cuestión tiene código escrito
dentro de sí.
9. No
10. No
100