Índice del Curso Básico
de Programación en Visual Basic

por Guillermo "guille" Som

Iniciado el 18/Abr/1997
Última entrega: 20/Ene/2006

 
 

Nota del 24/Dic/2002 (lee esta nota si quieres publicar o distribuir este curso básico)

Las entregas: (con un extracto del contenido)

Apéndice A (20/Jul/2003)
Cómo conseguir el Visual Basic 5.0 CCE (gratuito)
Instalar, configurar, etc.
 
Apéndice A.2 (26/Ago/2003)
Añadir controles a un formulario, cambiar el tamaño y posición, usar el menú Formato para ajustar tamaños, etc.
 
Apéndice B (20/Ene/2006)
Los tipos de proyectos que podemos crear con Visual Basic 6, cómo compilarlos y cómo configurar las opciones.
 
   
Primera (18/Abr/97)
Conceptos básicos:
Variables, expresiones, tipos de datos.
Print
 
Segunda (9/May/97)
Declaración de variables con tipos de datos de VB
Concatenación de cadenas.
Dim, Option Explicit
 
Tercera (14/Jun/97)
Más sobre los tipos de datos, caracteres para indicar el tipo de dato, funciones de conversión, declaración múltiple de variables en un Dim.
Funciones de conversión. Declaración de constantes. Bucles For y procedimientos con parámetros.
 
Cuarta (4/Jul/97)
Creación de procedimientos.
Declaración de variables y constantes a fondo.
Explicación línea a línea del código de la entrega 3.
Comparaciones (If... Then) y salidas de los procedimientos con Exit.
 
Quinta (26/Jul/97)

Soluciones 5ª (11/Ago/97)

Eventos y procedimientos de eventos.
Visibilidad o ámbito de las variables.
 
Quinta++ (29/Jul/97)
If/Then... End If
Expresiones lógicas.
 
Sexta (11/Ago/97)
Los bucles a fondo: For/Next, Do/Loop While/Until, While/Wend.
Nuevas instrucciones: Step, Else, Goto.
Uso de dos puntos (:) para separar instrucciones en la misma línea.
 
Séptima (10/Sep/97)
Crear Funciones.
Comprobar si existe un fichero mediante Dir$
Los operadores para las expresiones lógicas.
Operadores lógicos: And, Or, Not
Números binarios.
Continuador de líneas.
Anidación de If/Then y bucles.
 
Octava (11/Sep/97)
Arrays (arreglos, matrices)
Option Base
ReDim, Preserve, Erase
 
Novena (23/Sep/97)

Soluciones 9ª (23/Sep/97)

Números aleatorios.
Códigos ASCII
MsgBox, InputBox, Int, CStr
 
Décima (30/Sep/97)

Soluciones 10ª (10/Ene/98)

Array Multidimensionales
LBound y UBound
Clasificar (un array de cadenas)
 
Undécima (15/Nov/97)

Soluciones 11ª (26/Nov/97) 

Tipos definidos por el usuario (UDT)
Cadenas de longitud fija
With
 
Undécima -segunda parte (26/Nov/97)
Continuación de la entrega 11 y el IDE (entorno de desarrollo del VB4)
 
La Doce (10/Ene/98)

Soluciones 12ª (10/Feb/98)

Acceso a ficheros secuenciales
Guardar y leer información
 
La Trece (10/Feb/98)
El tamaño de un fichero.
Leer todo el contenido de una vez.
Caracteres comodines (*, ?)
Control de errores
ByVal
 
La Catorce (14/Feb/98)

Soluciones 14ª (7/Mar/98)

Llenar un ListBox con nombres de ficheros, usando Dir$
 
La Quince (23/Mar/98)

Soluciones 15ª (23/Mar/98)

Un pequeño editor de textos (guardar y leer)
Ejemplo de cómo manejar un fichero y asignarlo a un TextBox
Array de TextBoxes
MsgBox un poco más a fondo
 
La Dieciséis (6/Abr/98)

Soluciones 16ª (6/Abr/98)

Acceso a ficheros aleatorios (Random)
Manipulación de cadenas.
Funciones para leer y guardar números de un fichero
Arrays estáticos y dinámicos
 
La Diecisiete (16/Abr/98)

Soluciones 17ª (16/Abr/98)

Más sobre el manejo de cadenas de caracteres.
El tipo de datos Byte, arrays de Bytes como cadenas.
Las funciones LenB, LeftB, etc. para manejo de bytes.
Diferencia entre las funciones acabadas con o sin $
Funciones: CStr, Str$, UCase, LCase, LTrim$, RTrim$, Trim$, Chr$, Asc, Space$, String$, StrComp, InStr
Option Compare Text y Option Compare Binary
Sumar (concatenar) cadenas
 
La Dieciocho (26/Abr/98)

Soluciones 18ª (26/Abr/98)

Más sobre acceso a ficheros aleatorios (Random)
Uso de tipos definidos para el acceso a ficheros Random
 
La Diecinueve (24/Jun/98)

Soluciones 19ª (24/Jun/98)

Acceso binario a ficheros (Binary)
 
La Veinte (24/Jun/98)

Soluciones 20ª (24/Jun/98)

Seek, para saber la posición actual y posicionarse en una posición indicada de un fichero de acceso secuencial.
 
La veintiuna (13/Jul/98)
Pequeña definición de los controles más habituales:
Label, TextBox, CommandButton, ListBox, ComboBox, CheckBox, OptionButton, PictureBox, Frame
 
La Veintidós (4/Sep/98)
Cómo funcionan los eventos, cómo permitir que Windows siga procesándoles mediante DoEvents y los cuidados que debemos tener.
Cómo impedir la re-entrada en un evento.
 
La veintitrés (04/Oct/98)
Cómo saber los eventos que producen los formularios y controles.
Los eventos producidos por el ratón: Move, MouseDown, MouseUp
 
La veinticuatro (10/Oct/98)
Los eventos producidos al pulsar las teclas: KeyPress, KeyDown, KeyUp.
Interceptar la pulsación anticipada de teclas mediante Form.KeyPreview.
Array de controles.
Cómo seleccionar el texto de un TextBox al recibir el foco.
Orden de tabulación de los controles y tecla de acceso rápido para las etiquetas.
 
La Veinticinco (18/Oct/98)
Otros eventos: GotFocus, LostFocus, Change.
Arrastrar y soltar (Drag & Drop), tanto para aceptar ficheros, etc., como para arrastrar y soltar controles de nuestro formulario.
 
La Veintiséis (06/Dic/98)
Ventajas de usar Option Explicit y otros consejos sobre la declaración de variables y tipos de datos predefinidos para las variables que empiecen por la letra indicada.
Algo sobre la notación Húngara de las variables y controles.
La visibilidad de las variables.
 
La Veintisiete (14/Ene/99)
Propiedades y métodos.
Primer contacto con los módulos de clases.
 
La Veintiocho (28/Mar/99)
Mostrar un segundo formulario de forma modal y no modal.
Intercambiar información entre formularios.
Trabajar con dos o más formularios.
 
La Veintinueve (25/Abr/99)
Menús, submenús, PopupMenús, ajuste de tamaño y posición "automática" de los controles en el formulario.
Array de menús.
 
La Treinta (02/May/99)
Más sobre la creación de submenús, PopupMenus (menús emergentes o contextuales), teclas de acceso rápido, uso del portapapeles (ClipBoard)
Uso del API de Windows para deshacer, saber si se puede deshacer, copiar, cortar, pegar.
 
La Treinta y una (30/Jun/99)
Cuadro de diálogos comunes.
Enumeraciones
 
La Treinta y dos (23/Ene/2000)
Detección de errores en los cuadros de diálogos comunes.
Seleccionar la impresora a usar en la aplicación.
Acceder a cada línea de un TextBox Multiline.
 
La treinta y dos punto dos (Errores)
Cómo detectar errores en Visual Basic.
On Error Resume Next y On Error Goto númLínea
 
La Treinta y tres (3/Jul/2000)
Crear un cuadro de diálogo "personalizado" para Buscar/reemplazar

 
La Treinta y cuatro (8/Dic/2000)

Soluciones de la entrega 34 (18/Ene/2001)

Acceso a bases de datos.
Acceder usando el DAO datacontrol.
 
La Treinta y cinco (14/Feb/2001)
Buscar en una bases de datos usando DAO.
Parámetros opcionales con tipo.
 
La Treinta y seis (14/Feb/2001)
Acceder a bases de datos con ADO datacontrol.
 
La Treinta y siete (14/Abr/2001)
Las clases.

Seguramente habrás oído hablar sobre Programación Orientada a Objetos, (OOP Object Oriented Programing), Herencia, Polimorfismo, Encapsulación o simplemente que existen un tipo de fichero en Visual Basic, (a partir de la versión 4 inclusive), llamado módulos de clases, (esos fichero tienen la extensión .cls)
 
La Treinta y ocho (01/Jun/2001) 
Las colecciones.
Como los arrays, pero más fáciles de usar...
 
La Treinta y nueve (12/Jul/2001)
Clonar objetos o cómo implementar el método Clone en nuestras clases.
 
La Treinta y nueve punto dos (12/Jul/2001)
Copiar o clonar objetos con Visual Basic 6.
 
La Cuarenta (04/Sep/2001)
Acceder a bases de datos DAO sin data control.
Cómo realizar consultas con DAO.
 
La Cuarenta y una (30/Sep/2001)
Acceder a bases de datos ADO sin el data control.
Caracteres comodines para usar en las consultas.
Definición de la función Replace.
 
La Cuarenta y dos (09/Nov/2002)
Crear colecciones personalizadas.
For Each...
 
La Cuarenta y tres (21/Dic/2002)
Polimorfismo mediante interfaces.
Repaso a las características de la programación orientada a objetos que Visual Basic soporta.
 
La Cuarenta y cuatro (07/Ene/2003)

Soluciones de la entrega 44 (09/Feb/2003)

Más cosas sobre el polimorfismo e implementación de interfaces, además de cómo mostrar un segundo formulario y como utilizar de forma "inteligente" un botón Aplicar en un formulario de configuración...
Definir los botones Default y Cancel de un formulario.
 
La Cuarenta y cinco (09/Feb/2003)
Crear eventos en nuestras clases mediante Event y declarar variables de clases que producen eventos. Ampliar los formularios con eventos definidos por nosotros.
 
La Cuarenta y seis (03/Mar/2003)

Soluciones de la 46 (12/Abr/2003)

Ampliar el funcionamiento de un control mediante una clase.
En el ejemplo usado, ampliaremos un control de tipo TextBox.
 
La cuarenta y siete (22/Ago/2003)
Introducción a los componentes ActiveX (o COM)
Nuestro primer componente
Repaso a las clases.
 


El curso básico en formato CHM.
Nuevo: 23/Enero/2000
Si quieres, puedes bajarte el curso básico en formato CHM, puede que en un futuro esté en formato HLP para aquellos estudiantes que sólo disponen del Windows 95 y no del 98 o posterior... aún hay colegios que incluso trabajan en MS-DOS... en fin...

Pulsa este link para bajarte el fichero ZIP (guilleHHW.zip 3465 KB), con la entrega 47 incluida.

Nota del 02/Mar/2003:
Debido a que el fichero en formato CHM se está haciendo cada vez más grande... es posible que no lo siga actualizando, pero, para que puedas hacerlo por tu cuenta, voy a poner los ficheros necesarios (y actualizados) para que puedas crearlo y compilarlo, para ello, necesitarás el HHW.exe

Nota del 30/Nov/2004:
En vista de que no he publicado el fichero ese que comenté en la nota anterior, aquí está el link para bajarse el susodicho fichero en formato CHM (ayuda de Windows):
El curso básico en formato CHM: guilleHHW.zip 3.38 MB


Las entregas en formato ZIP:

Pulsa en los links para bajarte los ficheros comprimidos con las entregas correspondientes.
Si te da error al descomprimir cualquiera de ellos, intenta bajarlo de nuevo, ya que no están erróneos y puede ser que te de error por "saturación" de las líneas.
De todas formas, esta "aclaración" vale para cualquier fichero zip, lo bajes de mis páginas o de cualquier otra.

Nota del 25/Abr/99: Ahora los ficheros zips se acceden directamente, sin usar la página intermedia de download, espero que de esta forma haya menos problemas al efectuar la "bajada" de los mismos, de todas formas, me reitero en que antes de "protestar" diciendo que ha dado error al bajarlo, lo intentes de nuevo ya que la mayoría de las veces es por fallo del la sobrecarga de Internet y en algunas ocasiones del servidor desde el que estás conectado... aunque en alguna rara ocasión sea un "despiste" mío o un fallo del servidor en el que están mis páginas alojadas... así que, inténtalo un par de veces antes de "quejarte", no es que haya muchas quejas, pero de vez en cuando recibo alguna...

 

Si quieres bajarte TODAS las entregas, puedes hacerlo desde aquí:

Todas las entregas (incluida la 47) 0.97 MB bas_todo.zip

Nota: las imágenes correspondientes, también están incluidas, salvo la del fondo y la media luna...


NOTAS aplicables desde el 24/Dic/2002:
(o a partir de la entrega 43)

El contenido de este curso básico de programación NO se podrá publicar en otros sitios webs,
tampoco se podrán incluir los ficheros zips con las entregas ni con el fichero en formato CHM.

En caso de que estés interesado en incluirlos, por favor consulta conmigo antes.
Si no lo haces...

Seguramente te preguntarás el porqué de esta "negación".
Las razones son varias, una de ellas es que hay sitios en los que no mencionan la procedencia ni el autor del curso y creo que no es ético.
En otros sitios, las entregas no están actualizadas con todas las entregas del curso.
Lo mismo ocurre con el contenido de el/los ficheros zips con las entregas y/o el fichero CHM.

Y creo que eso no está bien, si tienes intención de incluirlos en tu sitio web, me parece bien y te lo agradezco, pero lo único que pido es un compromiso de actualización.
Sólo eso... creo que así los que lleguen a encontrar el curso en sitios diferentes al mío, tendrán la misma oportunidad de estar "a la última".

Gracias.


 

Ir al índice principal del Guille

Las páginas del Curso Básico se han visitado:
¡Un puñao de gente!, pero el contador ya no funciona...