Descargar

Tutorial de introducción a la programación avanzada con Visual Basic 6.0 (página 2)

Enviado por jesus garcia utrera


Partes: 1, 2

  • OLE

Permite enlazar un archivo externo a VB a un programa creado por nosotros.

  • DriveListBox (Lista de unidades)

Muestra un combo con la lista de unidades del ordenador.

  • DirListBox (Lista de carpetas)

Muestra las carpetas del ordenador.

Muestra los archivos del ordenador.

Los demás controles no serán explicados porque si ya sabes lo básico, ya sabes eso.

Controles extrínsecos

Son controles que se agregan a una aplicación por la vía "Componentes", estos son controles Activex, creados por el usuario o los que se instalan con Visual Studio. El uso de estos controles en una aplicación requiere la creación de un instalador para su distribución.

Este control permite agregar a una aplicación los típicos cuadros de dialogo como: Abrir, Guardar Como, Imprimir, Paleta…

Para agregar un CommonDiaolog, ve a "Proyecto > "Componentes" y agregas:

Microsoft Common Dialog Control 6.0 (SP3)

Abrir un archivo para MediaPlayer 8

edu.red

Guardar como archivo de texto el contenido de un TextBox "txtEditor"

edu.red

Imprimir el contenido de un TextBox

edu.red

  • DTPicker (Recogedor de Fecha)

Este control es como un Combo Calendario, que permite elegir una fecha específica buscado el día, mes y año.

Para agregar DTPicker elige en "Componentes":

Microsoft Windows Common Controls-2 6.0 (SP4)

Para guardar una fecha elegida con DTPicker en una variable o en una etiqueta, se utiliza la propiedad Value de este así: DTPicker1.Value

El control ToolBar permite crear eso; una barra de herramientas con la ayuda del control ImageList.

Para agregar ToolBar e ImageList seleccionamos de "Componentes":

Microsoft Windows Common Controls 6.0 (SP6)

Cargar imágenes al ImageList

Click derecho sobre el ImageList1 > "Propiedades"

En "General" elegimos el tamaño en que se verán las imágenes o iconos.

En la pestaña "Imágenes" hay un botón llamado "Insertar Imagen", este nos abre un cuadro de dialogo de "Buscar en" el cual nos permite cargar las imágenes una a una.

Luego de cargar las imágenes…

Crear la barra de herramientas

Click derecho sobre ToolBar1 > "Propiedades"

En "General" elegimos ImageList1 para ImageList.

Y elegimos 1- tbrFlat en Style.

En la pestaña "Botones" con el botón "Insertar" agregamos botones.

Llenar el "Caption" no es obligatorio (preferiblemente no llenar)

Llenar "Key" SI es obligatorio, (con lo que se escriba aquí se programa el toolbar)

ToolTipText (no es obligatorio) muestra lo que escribamos aquí cuando pongamos el cursor sobre el botón del Toolbar.

Description (no es obligatorio llenar)

Image: aparece con un 0 (cero), para agregar una imagen se pone allí el numero de la imagen, es decir si quiero poner a ese botón la primera imagen del ImageList ponemos el numero 1. y así sucesivamente para otros botones.

Programar la barra de herramientas

edu.red

"nuevo", "guardar" y "borrar" son los "Keys" de los botones.

Permite reproducir varios archivos de audio.

Para agregar un MMControl en "Componentes" eliges:

Microsoft Multimedia Control 6.0

Reproducir un CD de Audio

edu.red

Propiedades de un proyecto

Un proyecto tiene una serie de características u opciones que se pueden configurar entre las cuales se encuentran: Nombre del proyecto, versión, tipo de proyecto, titulo de la aplicación, icono, tipo de compilación, objeto inicial, entre otros.

Para ver y configurar las propiedades de un proyecto… click en "Proyecto" > "Propiedades de [NombreProyecto]"

Entre las opciones de "Propiedades" cabe destacar:

Ficha "General"

  • Tipo de Proyecto: Permite cambiar el tipo de proyecto elegido, puede ser EXE Estándar, EXE Activex, DLL Activex o Control Activex.

  • Objeto Inicial: Permite escoger el formulario u objeto que se mostrara primero cuando se ejecute el programa.

  • Nombre de Proyecto: Es el nombre del proyecto creado, este es el nombre que sale en la ventana "Complementos" cuando creamos un componente Activex.

Ficha "Generar"

  • Aplicación:

Titulo: Es el nombre que tendrá el programa en el administrador de tareas y en "Agregar o Quitar Programas" del panel de control.

Icono: Pone como icono de la aplicación el del formulario seleccionado.

  • Numero de Versión: Es eso, el numero de la versión del programa.

Elementos de un proyecto

Para estudiar los elementos de un proyecto, tomare como ejemplo un .EXE Standard.

Un proyecto Standard puede tener:

  • Formularios

Es una ventana en blanco en la cual "dibujamos" los controles. Los formularios o "ventanas" pueden ser hijas o madres. Cuando una ventana es hija significa que se mostrara dentro de una ventana y si es madre será la ventana que contenga a las demás, por ejemplo este programa "Word" la hoja que estas leyendo es una ventana hija de la ventana madre que es donde están los menús, barras de herramientas, etc.

Para crear un programa que utilice una ventana o formulario padre e hija…

Agrega un formulario MDI (del menú Proyecto), luego agrega un formulario standard y coloca su propiedad MDIChild = True

Visual Basic trae la opción de agregar formularios "prediseñados", al elegir "Agregar formulario" en esta venta aparecen opciones de formularios como, "Cuadro de dialogo Acerca de…", "Cuadro de dialogo Inicio de sesión (el de la contraseña()", "Explorador web", "Pantalla de inicio (o Submain)" entre otros…

Estos formularios ya traen una parte del código hecho, pero para que funcionen de verdad se necesita agregar los procedimientos requeridos.

Algunas Propiedades

WindowState = Permite elegir el estado del formulario o ventana cuando se ejecute, puede ser minimizado, maximizado o normal.

StarUpPosition = Aquí se elige la ubicación en la pantalla del formulario.

ShowInTaskBar = Si es False no aparece un botón de la ventana en la barra de tareas cuando se ejecuta el programa.

Picture = Sirve para agregar un fondo de archivo (ya sea una imagen por ejemplo) al formulario.

ControlBox = Si es False se quitan los botones "Minimizar – Maximizar/Restaurar – Cerrar" de la barra de titulo.

BorderStyle = Nos permite elegir el tipo de borde o mas bien el tipo de ventana o formulario que queremos.

Como crear un formulario SubMain o de inicio (Splash)

Colocar la propiedad ControlBox = False; BorderStyle = 3 – FixedDialog y borra el "Caption". Luego colocamos las etiquetas o imágenes y agregamos un temporizador el cual tendra su propiedad Interval = 1000. y en su código …

edu.red

En donde Form2 es el formulario que se mostrara después del SubMain.

Mover un formulario sin la barra de titulo (Tomado de "El Guille")

edu.red

El procedimiento "moverForm" se puede aplicar a cualquier control en su evento MouseDown escribiendo el código como aparece en "Form_MouseDown"

  • Módulos

Son archivos que se anexan al los programas, son como un especie de bloque compacto de código que agiliza la ejecución de los programas ya que por ejemplo si estamos creando un programa muy complejo que tiene muchos formularios y que varios de estos comparten código seria mas fácil escribir este en un modulo y así hacerlo disponible para cualquier formulario. Existen 2 clases de módulos:

Módulos estándar: Los módulos estándar (extensión de nombre de archivo .bas) son contenedores de los procedimientos y declaraciones a los que tienen acceso otros módulos (Formularios) de la aplicación.;

Módulos de clase: Los módulos de clase (extensión de nombre de archivo .cls) son la base de la programación basada a objetos en Visual Basic. Puede escribir código en módulos de clase para crear nuevos objetos. Estos objetos nuevos pueden incluir propiedades y métodos personalizados. En realidad, los formularios sólo son módulos de clase que pueden tener controles y que pueden mostrar ventanas de formulario.

  • Controles de usuario

El elemento "Control de usuario" permite crear nuestros propios controles, ya sea una caja de texto personalizada, un botón o cualquier clase de control, como un reproductor de audio o de video en fin lo que uno quiera, para crear un control es necesario entender de tecnología "Activex" que explicare mas adelante. Así que el ejemplo practico lo veras en el tema "Activex"

  • Data Enviroment

Este es una "Conexión" a datos (es decir Base de Datos), permite crear una conexión o enlace a las bases de datos para por ejemplo hacer un reporte, aunque su principal función sea la del enlace de datos a través de Internet.

  • Data Report

Es un elaborado reporte de una base de datos que permite además de visualizar los datos, imprimirlos o exportarlos a otro tipo de archivo, permite gran flexibilidad en la manera en que se muestran los datos, ya que prácticamente se muestran en el lugar que "se te de la gana" ponerlos. Este elemento también permite agregar etiquetas, cajas de texto, imágenes, figuras e incluso funciones.

Estos son los principales elementos de un EXE Standard, y no menciono a el "Web Class" ni al "DHTML Page" porque estos no están disponibles para un EXE Standard.

Eventos, procedimientos

Como se supone que esto es un tutorial avanzado, no voy a explicar que son los eventos y procedimientos, vamos al grano con ejemplos prácticos (

Imitación de una hoja Excel

Para este ejemplo vamos a utilizar los eventos del teclado "KeyPress", "KeyDown", Además el evento "GotFocus" y "LostFocus" y el "FormUnload"

Agrega 4 cajas de texto a un formulario así:

edu.red

La idea es:

( Desplazarnos por las cajas de texto con las teclas direccionales.

( Cuando una caja reciba el cursor, su contenido se seleccione.

( Que las cajas solo reciban números.

( Que los números se muestren en formato decimal

( Y que al cerrar el programa nos pregunte si estamos seguros de salir.

Pon la propiedad "Text" de todas las cajas de texto a "0,00"

Para desplazarnos con las direccionales…

edu.red

KeyCode nos permite capturar la tecla pulsada en el evento KeyDown, si la tecla pulsada es "vbKeyLeft" (Direccional Izquierda) por ejemplo; se lleva a cabo el procedimiento "Text#.SetFocus" y así el cursor pasa a otra caja.

Para capturar la tecla pulsada podemos escribir su respectiva constante. Algunas constantes son:

edu.red

(Para conocer más constantes consulta la ayuda de Visual Studio)

Para que solo reciban números…

edu.red

Para que el contenido se seleccione al recibir el cursor…

edu.red

Mostrar los números en formato decimal…

edu.red

Y finalmente para comprobar la salida del programa…

edu.red

Con esto has visto algunos eventos y los procedimientos que se "adaptan" a ellos. Ten en cuenta que NO todos los procedimientos se pueden ejecutar en todos los eventos.

Algunas sentencias

Por sentencias podemos entender que son aquellas líneas de código formadas por palabras reservadas, entre mas sentencias conozcas mas maneras se te ocurrirán de resolver un algoritmo. En este capitulo voy a explicar y a poner en funcionamiento algunas sentencias.

  • If … Then … ElseIf … Else … End If

Su sintaxis es:

If Then

Acciones

ElseIF Then

Acciones

Else

Acciones

End If

Utilizaremos "ElseIf" para escribir más de una condición usando un solo If. Asi trataremos datos que se relacionan entre si o son similares. ¡No es lo mismo que hacer condicionales anidados!

Ejemplo:

edu.red

Si las acciones a realizar son una (1) sola podemos escribir un If de una sola línea.

edu.red

También puedes usar los And que necesites

  • Select Case … Case … End Select

Puedes utilizar el Select Case cuando creas "de creer" por ejemplo que estas haciendo un If muy complejo o largo, esto te simplifica en gran medida esta labor.

Los Select se deben usar en el evento de un control y se deben aplicar a una propiedad de este.

Su sintaxis es:

Select Case (Control u Objeto).Propiedad

Case "xxx"

Acciones

Case Else

Acciones

End Select

Los Select también utilizan los operadores logicos Not, Or y And casi de igual manera que los If.

En la lectura de este tutorial ya has visto 2 ejemplos del Select por eso no voy a poner mas (ya estoy mamado de escribir).

  • With … End With

Con With resumes la manera de asignar el valor de las propiedades de un control u objeto; por ejemplo:

edu.red

Introducción al manejo de bases de datos

Debido a la calidad de "avanzado" de este tutorial, explicare de manera breve como crear la base de datos desde el VisData.

Creación de la base de datos

Clic en los menús… ( "Complementos" ( "Administrador visual de datos" // cuando abra el Visdata, haces clic en "Archivo" ( "Nuevo…" ( "Microsoft Access" ( "MDB de la Version 7.0" y a continuación Guarda la Base de Datos.

Has clic derecho sobre el espacio en blanco de la ventana "Ventana de base de datos" y del menú contextual has clic en "Nueva Tabla".

Dale nombre a la tabla; ingresa los campos; elige el campo indice y "Generar tabla"

Una vez hecho todo este proceso, agrega la Referencia DAO, en agregar referencias.

"Microsoft DAO 2.5/3.51 Compatibily Library".

Si quieres conocer mas a fondo este proceso de creación de bases de datos, descarga el manual "Como crear programas con bases de datos (usando la referencia DAO)" de www.lawebdelprogramador.com allí esta todo explicado

Para hacer funcionar el programa, tenemos que enlazar la base con nuestra aplicación, de la siguiente manera:

* Para que este código funcione, la base debe estar guardada en la misma carpeta de nuestro proyecto o programa.

edu.red

Debido al carácter publico de este procedimiento, debe estar escrito en un modulo.

Y para ejecutarlo escribes Call EnlazarBase en el Form_Load del primer formulario del proyecto.

Una base de datos puede tener en muchos casos mas de una tabla, en este procedimiento puedes agregar todos los "Set Tabla…" que sean necesarios, al igual que si tu aplicación tiene varias bases de datos las puedes enlazar con este mismo procedimiento usando distintas variables de tipo DataBase y variables de Rutas; o lo puedes hacer en procedimientos distintos (ojo, de distinto nombre sino el VB te dirá que tienes un procedimiento Ambiguo, es decir repetido)

Manejo de bases de datos

  • Guardar los datos o registros

Creas un procedimiento de guardar, por ejemplo Private Sub Guardar()

edu.red

Este procedimiento verifica si el código o índice escritos ya han sido usados y si es así, te avisa de que ya existe sin generar error alguno.

  • Buscar datos

Con este procedimiento puedes realizar consultas en los datos guardados.

edu.red

  • Visualizar los datos

Para ver los resultados de una consulta o desplazarte por los registros es necesario este procedimiento:

edu.red

  • Desplazarse por los registros

Con este procedimiento podemos movernos al último registro, al primero, a un registro anterior o uno siguiente. Para hacer esto debes crear una matriz de 4 controles de un botón de comando, desde el Boton(0) hasta Boton(3), esto lo puedes hacer al copiar un boton, VB te preguntara si quieres crear un matriz de controles, le dices que Si y lo pegas el resto de veces necesario.

edu.red

  • Eliminar datos

Adivina, con este borras o eliminas registros (

edu.red

Tal vez no fue mucho lo que escribí sobre esto, pero he aquí lo suficiente para este tutorial, además parte de la información que tengo sobre bases de datos ya la he publicado en www.lawebdelprogramador.com. Si no los conoces los títulos son:

  • Como crear programas con bases de datos (usando la referencia DAO)

  • Como crear programas con bases de datos y evitar errores (con DataControl)

  • Como agregar un reporte a un programa con bases de datos.

Todos los encuentras en "Biblioteca de Temas" >> "Visual Basic ( )"

Y para los que ya han leído estos manuales y en especial el del "Reporte" y no les actualiza el reporte sino hasta que salen de todo el programa, ahí les va la solución… (Que pena no haberla puesto en ese manual()

edu.red

Cuando creas el comando el mismo VB crea un propiedad de este llamada rsNombreComando ¿si?, la identificas por el prefijo rs; lo que pasaba es que al cerrar el reporte NO se cerraba el enlace que este hacia con la base y al quedar "abierta" la conexión; pues no mostraba los cambios hechos en el formulario cuando se volvía a mostrar el reporte.

Listo!

Algunas APIs

Te preguntaste alguna vez si se podía hacer un programa que manipulara muchas funciones propias del sistema operativo como por ejemplo, copiar archivos, eliminar o mover, reproducir sonidos, registrar programas, bloquear o desbloquear los periféricos de entrada como teclado y mouse, como deshacer cambios, poner tus formularios y programas por encima de todas las ventas y ser siempre visibles, abrir programas; pues todo esto y aproximadamente 80.000 cosas mas son posibles gracias a las APIs de Windows, incluso un virus hecho en VB utiliza como minimo de 2 a 3 APIs (claro que aquí no les voy a enseñar como darles ese uso Je, je ()

Las APIs (Interfaz de programación de aplicaciones) son funciones del propio Windows y son las que le permiten hacer lo que hace, cada proceso que realiza este sistema operativo, esta manipulado por una API, y es en serio son como 80.000 funciones API que tiene el Windows.

Las APIs están organizadas en librerías de Windows como Kernel32.dll, Advapi32.dll y User32.dll

Necesitan de una declaración ya sea privada o pública en nuestro programa para que podamos manipularlas, además algunas necesitan de un reguero de constantes para funcionar.

Pero ¿Dónde consigo esas declaraciones y constantes? Es más o menos fácil si te sabes el nombre de la API que buscas. Visual Studio tiene en sus herramientas (si las instalaste obviamente) una llamada API TextView o Visor de Texto API, ya te voy a enseñar a manejarla.

Este es el API TextView o Visor de API…

edu.red

Para usarlo abres el menú archivo y le das clic en "Cargar archivo de texto" y cargas el que dice "WIN32API.txt". En "Tipo de API" puedes seleccionar si lo que buscas es una declaración, constantes o tipos, escribes el nombre o parte del nombre de la API que buscas y le das doble clic a esta API en Elementos disponibles. De ahí la puedes copiar a tu programa.

Pero lamentablemente no es así no mas que ya manipulas al sistema operativo, necesitas de un código que manipule a la API (es que no basta con declararlas y poner sus constantes) entonces aquí voy a poner unos ejemplos de APIs con sus declaraciones, constantes y códigos para manipularlas.

  • Abrir un programa previamente instalado.

Esta API solo funciona con programas instalados y registrados en Windows (en el Regedit) no creas que con esto abres cualquier .EXE, en este ejemplo vamos a abrir cualquiera de Microsoft Office.

En un modulo pega lo siguiente:

edu.red

Puedes buscar en C:Archivos de programaMicrosoft Office… los .EXE de Excel, Power Point, y también los accesorios de Windows, el único que me se es calc.EXE (la calculadora)

edu.red

  • Una ventana siempre visible

edu.red

  • Copiar un archivo

Todo esto va en el formulario:

edu.red

En esta API, el ultimo parámetro ",1" puede ser cambiado por cero "0" para que sobrescriba al archivo de destino, si ya existe.

Funciones

Con Visual Basic es muy fácil hacer ciertas cosas que no son muy obvias gracias a sus funciones; las funciones son bloques que código que siempre devuelven uno o varios valores, ¿entiendes esto?, pues yo hace mucho no lo entendía, y si estas en las mismas aquí te va:

Cuando en programación se habla de devolver, significa que el programa o algoritmo va a generar un resultado, ya sea, un número, un texto o un valor lógico, por ejemplo: si hacemos una función que sume 2 números, la función debe devolver el resultado de la suma de esos 2 números.

Existen 2 clases de funciones, las internas y externas.

Funciones Internas: son las que vienen incluidas en el propio lenguaje de programación.

Funciones Externas: son las que el mismo programador crea en su código.

Ya no más carreta, aquí van los ejemplos y usos de algunas funciones internas de VB:

  • Val

Convierte un dato cualquiera a numérico, si no se puede (por decir si aplicamos Val a "ABC123") generara un error. Utiliza Val para hacer operaciones con cajas de texto.

Ejemplo:

edu.red

  • CDbl

Permite convertir y manipular números reales (casi igual que Val)

Ejemplo:

edu.red

  • Str

Hace todo lo contrario de Val, pero no genera error.

Ejemplo:

edu.red

  • Len

Devuelve la longitud de un texto

Ejemplo:

edu.red

  • Int

Devuelve un valor entero redondeado de un valor

Ejemplo:

edu.red

  • Fix

Devuelve la parte entera de un número

Ejemplo:

edu.red

  • Rnd

Devuelve un numero aleatorio entre un rango de números.

Ejemplo:

edu.red

Activex – Creación de un control

Activex es la tecnología de programación que permite crear y distribuir nuestros propios controles u objetos, para ser usados por cualquier lenguaje que los soporte.

Manos a la obra…

  • Crea un nuevo proyecto "EXE Estándar" en VB.

  • Agrega a este un proyecto "Control Activex"

edu.red

La idea es que crees un "Grupo de Proyectos", el estándar lo usaremos para ir probando y depurando nuestro control.

Pero antes de empezar, necesitamos 2 imágenes de botones, una oprimido y otra no oprimido, puedes crear las tuyas dibujándolas y puliéndolas en algún editor de imágenes; para empezar te colaboro con estas:

edu.red

Utilizando un control Image en el formulario del proyecto "Control Activex" carga estas imágenes (cada una en un Image) ponles como nombre "Face1" y "Face2"

edu.red

Selecciona al mismo tiempo los 2 controles Image y pon sus propiedades Left = 0 y Top = 0. Quedaran una sobre la otra. Debe quedar "Face1" encima, si no es así, has click derecho sobre "Face2" y elige "Enviar al fondo". Para poder ajustar el tamaño del control, coloca a True la propiedad "Strech" de los Image

Ajusta el tamaño del formulario al tamaño de los Image (Face1 y Face2) de modo que no sobre salga.

edu.red

Coloca una Etiqueta (Label) sobre los Image. Colócale por nombre "lbCaption"; pon su propiedad BackStyle = 0 – Transparent; escribe algo de texto en su propiedad "Caption" que será lo que salga por defecto cuando lo utilices, por ejemplo un botón de comando dice "Command1". Puedes poner lo que quieras. Desde su propiedad "Font" pon su "Caption" en negrita.

edu.red

Ajusta el tamaño de la etiqueta para que quede igual al tamaño de los Image.

Ahora copia este código, que permitirá que nuestro control se comporte como un botón de comando cuando se hace click sobre el.

edu.red

Para crear las propiedades y eventos del control usaremos el "Asistente para interfaz de control Activex".

Has click en el menú "Complementos" > "Administrador de Complementos" y vamos a elegir de allí "asistente para interfaz de controles activex"

edu.red

En "Comportamiento de carga" elige "Cargado/Descargado".

Luego regresa al menú "Complementos" y elige la nueva opción que debe aparecer "Asistente para interfaz de control Activex"

edu.red

Dale "Siguiente >"

edu.red

Otra vez "Siguiente >"

edu.red

Busca en "Nombres Disponibles" las propiedades que quieras; para este ejemplo agrega Caption, Font, Click, MouseMove y le das "Siguiente >" a la que sigue también "Siguiente >".

Los miembros personalizados te permiten crear propiedades que no estaban disponibles en la ventana anterior o utilizar las propiedades que ya existen pero en español o con el nombre que quieras, por ejemplo, si prefieres que la propiedad "Caption" de tu control se llame "Subtitulo" o "Font" "Fuente" etc, entonces utilizaras estos miembros personalizados. En este ejemplo no los usaremos.

edu.red

En Asignación, selecciona cada nombre público (propiedad) y asígnalas todas (en nuestro ejemplo) al control lbCaption.

edu.red

Y para terminar click en "Finalizar"

Todo el código que vuelve a nuestro control un control de verdad se genera automáticamente.

Para probarlo cierra todas las ventanas del proyecto Control Activex (si están abiertas no se puede probar) y en el cuadro de herramientas del proyecto estándar del grupo de proyectos debe aparecer un nuevo control.

edu.red

Para usar este control en otro proyecto o programa que diseñes, debes compilarlo, has click en el menú "Archivo" > "Generar NombreProyectoControlActivex.ocx"

Optimizar la Programación

Este ultimo apartado trata mas de cómo hacer de la programación un oficio mas eficaz y exitoso, tal vez por que cuando era estudiante de Análisis y Programación de Computadores, vi en mis compañeros y amigos la necesidad de estas técnicas (por así decirlo) para programar o porque me gusta escribir mucha carreta !!!

  • Consejos Teóricos

  • 1. Como escribiría un hacker "Todo es posible", a la fecha no creo que hayan programas imposibles de hacer, inclúyete en la lista de los que podemos hacer lo que se nos pida y ocurra.

  • 2. Desprográmate para programar. (haber que entiendes aquí)

  • 3. El análisis previo antes de iniciar un proyecto te evitara reescribir una buena cantidad de código o reestructurar un programa, aunque algunas soluciones solo se encuentran en el camino.

  • 4. Cuando realices un trabajo grande, trata (si te es posible) de alejarte de la programación por lo menos un día o dos cada semana.

  • 5. Hacer programas es como hacer música, sin inspiración "¡ pailas !"

  • Consejos Prácticos

  • 1. Requerir declaración de variables.

Esto es muy importante ya que, ¿quien no ha escrito mal el nombre de una variable y luego se le forma un lío porque no sabe como debería estar escrita?; al requerir la declaración de variables VB te mostrara un mensaje de error al no encontrar la variable mal escrita declarada. Esto realmente solo es necesario cuando se hacen grandes proyectos, con muchos formularios, módulos etc. Pero siempre es un buen hábito.

Para requerir la declaración de variables…

  • Has click en el menú "Herramientas" > "Opciones" en el cuadro de dialogo que se muestra has click en la casilla de verificación "Requerir declaración de variables" que se encuentra en la pestaña "Editor"

  • Al hacer esto aparece en el editor de código (En la parte superior) Option Explicit. (Cuando se abren nuevos proyectos)

  • Para que VB detecte algún error antes de compilar, ejecuta el programa presionando Ctrl + F5 que es "Iniciar con compilación completa"

  • Para que siempre que ejecutes un programa lo haga con compilación completa dale click a la pestaña "General" del cuadro "opciones" (del menú herramientas) y desactiva la casilla "Compilar a petición" con esto VB analizara el código antes de la ejecución y mostrara los errores. Una ves desactivada "Compilar a petición" se puede ejecutar el programa con F5 o haciendo click en "El play".

  • 2. Escribir la variables y nombre de controles con mayúsculas y minúsculas

Si vas ha usar una variable por ejemplo ValorUni escríbela así con la V mayúscula y la U mayúscula; además siempre que codifiques hazlo en minúsculas; si la variables esta bien escritas cuando salgas de la línea, valoruni se transformara a: ValorUni, al ver el cambio podrás estar seguro que la escribiste bien. Igual con los nombres de los controles (TextBox, CommandButtons, etc) y además para los controles utiliza los prefijos. Yo utilizo estos:

Prefijo

Control

Ejemplo

tx

Textbox

txCodigo

bt

Botón de comando

btAceptar

frm

Forms

frmPrincipal

lb

Label

lbNombre

opt

Botón de Opción

optClase

cb

Combo

cbLista

  • 3. Definir el tipo y ámbito de una variable

Una variable tiene un tipo (String, Variant, Long, Integer, etc…) y un ámbito (Public, Dim, Static…) se recomienda analizar primero para que va ha ser utilizada la variable y donde se va usar. Ejemplo:

Si necesito una variable para contener el Resultado de una operación aritmética que me pueda arrojar resultados decimales, la declarare como Double, y si la quiero utilizar en todo un formulario escribo esto en "(General)" que se encuentra en la parte superior de editor (debajo de Option Explicit) o dale click al combo "Objeto" y busca "(General)"

Dim Resultado As Double

Si quiero utilizar la variable desde cualquier formulario agrego un modulo: "Proyecto" > "Agregar modulo" y escribo también en "(General)"

Public Resultado As Double

Si solo voy a utilizar la variable en un procedimiento la declaro dentro de él así:

Dim Resultado As Double

Lista de tipos y ámbitos

edu.red

  • 4. Depurar el Código

Depurar el código consiste en corregir o eliminar los errores que se producen en este, no es recomendable acumular los errores, en el momento que se van presentando hay que ir depurándolos. Se pueden usar los Puntos de Interrupción para entender paso a paso como corre o se ejecuta un código o procedimiento. Ejemplo:

edu.red

Los puntos de interrupción (los puntos rojos) indican la línea de código que se interrumpirá en su ejecución, al interrumpirse podemos conocer el estado de las variables con solo poner el mouse y ver el ToolTipText de una variable así:

edu.red

Para colocar uno o varios puntos de interrupción solo hay que hacer click en el lugar donde aparece en la imagen el punto rojo.

Luego se ejecuta el programa normalmente y este se detendrá y mostrara el editor de código donde se haya señalado.

Para quitarlos, se puede hacer click sobre el punto rojo, o del menú "Depuración" > "Borrar todos los puntos de interrupción"

Anexos

Como crear el instalador

Una ves creada nuestra aplicación bajo VB para poder distribuirla necesitamos crear un instalador, así como nosotros instalamos otras aplicaciones nuestra aplicación creada en VB también debe ser instalada de la misma manera, para esto tenemos dentro del Visual Studio o VB el Asistente para Empaquetado y Distribución o Package & Deployment Wizard.

Empezando

El Package & Deployment Wizard lo encontramos en el menú inicio dentro de la carpeta Visual Studio 6.0 o Visual Basic 6.0 > Tools…/Herramientas… > Package & Deployment Wizard/ Asistente para Empaquetado y Distribución.

edu.red

Antes que nada debemos indicar cual es proyecto de VB (.VBP) que deseamos crear el instalador y luego hacemos click sobre "Package/Empaquetar", si no encuentra el archivo ejecutable de la aplicación (.EXE) nos dejara compilarlo en ese momento dado que ese archivo es lo indispensable para nuestra aplicación, también si ese .EXE tiene una fecha mas antigua al archivo del proyecto nos dará la opción de recompilarlo para evitar que el proyecto quede desactualizado con el .EXE. Tipos de Empaquetado

Existen 2 tipos de empaquetados…

  • Paquete de instalación estándar. – Crea el archivo instalar.exe o setup.exe para distribuir nuestra aplicación en un disquete, cd-rom, download desde internet u otro dispositivo.

  • Archivo de dependencias – Se usa para crear un archivo que almacene información sobre componentes de tiempo de ejecución que requiere su aplicación. Básicamente para saber que DLLs u otros componentes usa su programa.

En nuestro caso solo utilizaremos la primer opción "Paquete de instalación estándar" y damos click en "Siguiente".

Empaquetando

A continuación debemos elegir en que carpeta se creara el paquete de instalación, por defecto aparecerá la carpeta de nuestro proyecto VB.

edu.red

Siempre podemos seleccionar otra carpeta, no existe ningún inconveniente al respecto, yo por lo general creo una nueva carpeta llamada "instalación" dentro de la del proyecto y guardo todo ahí. Damos click en "Siguiente" y veremos que "trabaja" un poco y luego aparece la ventana de archivos incluidos, que contiene la lista de archivos que se distribuirán con nuestra aplicación.

edu.red

Si vemos que algún archivo que sabemos que requiere nuestra aplicación no aparece en la lista podemos agregarlo mediante el botón "Agregar" por lo general los archivos de ayuda .hlp o los leame.txt, también podemos quitar archivos haciendo click en el "Check", pero tengamos en cuenta que nuestra aplicación puede funcionar mal o directamente no funcionar, pero básicamente todos los archivos que aparecen por defecto de alguna u otra manera los utilizara nuestra aplicación o el propio instalador. Archivos CAB

Hacemos click en siguiente y tenemos las "Opciones de CAB", esto es básicamente como se creara nuestra instalación, podemos armar múltiples archivos .cab de 1.44MB para por ejemplo distribuirlos en disquete o crear un solo archivo CAB para otros tipos de distribución, un archivo CAB contiene comprimidos todos los archivos usados por nuestra aplicación, estos archivos se descomprimirán al instalar el programa. Configurando el Menú Inicio

Damos click en "Siguiente" y debemos agregarle un tituló a nuestra instalación por ejemplo el nombre del programa, click en "Siguiente". A continuación debemos crear el grupo de programas que iría en el menú inicio…

edu.red

Desde esta ventana se pueden ir agregando los distintos accesos directos que tendrá nuestra aplicación u otros archivos desde el menú inicio y también agregar nuevos grupos, damos click en "Siguiente". Ubicación final de los Archivos

La nueva ventana nos indica donde se ubicaran los archivos al ser instalados nos aparece un valor "$AppPath" que indica la ruta de nuestra aplicación, en definitiva la que elija el usuario. Existen otros valores como "$(WinSysPath)" que indica la ruta de la carpeta del sistema y demás valores que su nombre nos describe a que directorio hace referencia. Opciones Finales

Haciendo click en siguiente nos puede aparecer una ventana que nos diga si alguno de los archivos agregados manualmente son compartidos por otras aplicaciones, damos click en "Siguiente" y nos va a pedir guardar toda la configuración que realizamos para no volver a tener que agregarlas en posteriores usos de este instalador. Damos click en finalizar y veremos como comienza a crear todo lo necesario para que nuestro instalador funciones. Testando

Para probar el instalador nos dirigimos a la carpeta donde lo ensamblamos y damos click en setup.exe

Agradecimientos

Agradezco la colaboración y apoyo de:

  • Marcela Ardila

  • Elkin Santis

  • Eydy

  • Elkin López

  • www.lawebdelprogramador.com

  • www.elguille.info

  • www.portalvb.com

todos los comentarios y mejoras para el uso de visual Basic háganlo llegar al e-mail suerte y espero que les sirva es una recopilación del lo mejor en visual Basic

 

 

Autor:

Jesús Garcia

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente