jueves, 17 de septiembre de 2009

Aprende a programar en Visual Basic 6.0 con ejemplos

Empezando a programar


El entorno de programación de Visual Basic 6.0

Cuando Visual Basic 6.0 arranca vemos una pantalla similar a la imagen de abajo.




Elementos que componen Visual Basic 6.0




1.-La barra de títulos, la barra de menús y la barra de herramientas de Visual Basic 6.0.



2.-Caja de herramientas (toolbox) con loscontroles disponibles



3.-Formulario (form) donde se insertan los controles. Está diseñado de una rejilla (en forma de cuadros) para facilitar la alineación de los controles.


4.-Ventana de proyecto, que muestra los formularios y otros módulos de programas que forman parte de la aplicación


5.-Ventana de Propiedades, en la que se pueden ver las propiedades del objeto seleccionado o del propio formulario, si no esta visible se muestra con la tecla .

6. Ventana FormLayout, que permite determinar la forma en que se abrirá la aplicación cuando comienza a ejecutarse.




Ejemplos

Posicionamiento de un formulario


En este ejemplo vamos a utilizar dos tipos de formularios esto no lo mencione anteriormente en el articulo conociendo Visual Basic 6.0, Formulario MDI (Multiple Document Interface) Formulario de interfaz múltiple, es decir dentro de un formulario MDI se puede abrir varios sub-formularios hijos. Un Formulario MDI también se conoce como Formulario padre o como principal, en cada aplicación solo se puede agregar un formulario MDI y todos los demás formularios como formularios hijas.


Los formularios normales para agregar un formulario como hija (Child) se cambiar como verdadero (True) en su propiedad MDIChild


Los formularios Hijas se minimizan y maximizan dentro de los límites del formulario MDI. Cuando están maximizados, su Caption aparece junto al Caption del formulario MDI. Los formularios hija no tienen menús propios, sino que sus menús aparecen en la barra de menús del formulario MDI y también en una aplicación con un formulario MDI que tenga varios formularios hijas también puede tener algunos formularios no hijas es decir que abran afuera de los limites del formulario MDI.


Vamos a utilizar las propiedades Top, Left, Height y Width para hacer que el formulario interior (formulario hija) se mueva a la izquierda arriba, derecha arriba, centro, izquierda abajo y derecha abajo.




Vista previa




Controles






Código Fuente
----------------------------------------------------------------------------------------------------------


Private Sub cmdCentro_Click()
frmCuadro.Top = (Val(MDIfrmPrincipal.Height) - Val(Me.Height)) / 2
frmCuadro.Left = (Val(MDIfrmPrincipal.Width) - Val(Me.Width)) / 2
End Sub

Private Sub cmdDerAbajo_Click()
frmCuadro.Top = Val(MDIfrmPrincipal.Height) - Val(Me.Height)
frmCuadro.Left = Val(MDIfrmPrincipal.Width) - Val(Me.Width)
End Sub

Private Sub cmdDerArriba_Click()
frmCuadro.Top = 0
frmCuadro.Left = Val(MDIfrmPrincipal.Width) - Val(Me.Width)
End Sub

Private Sub cmdIzqAbajo_Click()
frmCuadro.Top = Val(MDIfrmPrincipal.Height) - Val(Me.Height)
frmCuadro.Left = 0
End Sub

Private Sub cmdIzqArriba_Click()
frmCuadro.Top = 0
frmCuadro.Left = 0
End Sub

-----------------------------------------------------------------------------------------------------------

Descargar el codigo fuente   


Cargar y descargar un formulario


Cuando se visualiza o se ejecuta un formulario por primera vez se producen varios eventos consecutivos: Initialize, Load, Activate y Paint. Cada uno estos eventos se pueden aprovechar para realizar ciertas operaciones.

Al ocultar, cerrar o eliminar un formulario se producen otra serie de eventos: Deactivate, QueryUnload, Unload y Terminate

El método Show o en su propiedad (visible = True) muestra un formulario oculto y el método Hide o en su propiedad (Visible = False) oculta un formulario aunque sus variables y propiedades sigan estando accesibles y conservando sus valores.

El meto End cierra toda la aplicación

El evento Initialize se activa antes de Load se utiliza para inicializar las variables definidas a nivel de módulo

El evento Load se activa al cargar un formulario

El evento Activate cuando se visualiza un formulario oculto utilizando el método Show o Visible = True en este tambien se usa el evento Paint.

El Evento Paint se activa cuando se formulario se dibuja

El evento Deactivate se activa cuando el formulario se desactiva es decir que el formulario se oculto con el método Hide.

El evento Unluad se activa cuando se cierra la ventana. Si se detiene el programa desde el botón Stop de Visual Basic 6.0 o con un End, no se pasa por el evento Unload. Para pasar por el evento Unload es necesario cerrar la ventana con el botón de cerrar (X).

El evento Terminate se activa cuando se descarga o se cierra el formulario.

Vista previa
 

 
Controles

 

 
Código fuente


--------------------------------------------------------------------------------------------------------------
Formulario frmPrincipal
Private Sub cmdCargar_Click()
frmventana.Show
End Sub

Private Sub cmdSalir_Click()
End
End Sub



Formulario frmventana

Private Sub cmdOcultar_Click()
Me.Hide
End Sub

Private Sub Form_Activate()
MsgBox "Evento Activate"
End Sub

Private Sub Form_Deactivate()
MsgBox "Evento Deactivate"
End Sub

Private Sub Form_Initialize()
MsgBox "Evento Initialize"
End Sub

Private Sub Form_Load()
MsgBox "Evento Load"
End Sub

Private Sub Form_Paint()
MsgBox "Evento Paint"
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
MsgBox "Evento QueryUnload"
End Sub

Private Sub Form_Terminate()
MsgBox "Evento Terminate"
End Sub

Private Sub Form_Unload(Cancel As Integer)
MsgBox "Evento Unload"
End Sub

---------------------------------------------------------------------------------------------------------------
Descargar el codigo fuente


Minicalculadora


En este ejemplo se utiliza los operadores aritméticos ( +, - , *, /) en Visual Basic 6.0 haciendo una mini calculadora que realiza las cuatro operaciones (sumar, restar, multiplicar y dividir) utilizando unos variables y el teclado numérico.

En este ejemplo también utilizamos el Evento Keypress, el evento keypress se activa cuando presionamos un botón del teclado por ejemplo el signo (+) del teclado numérico, cuando se presiona un botón del teclado el teclado envía el valor en código ascii, el evento keypress recibe el valor en ascii.

También se utiliza la función val() que convierte una cadena de tipo string a cadena numérico para poder hacer las operaciones numéricas.

Vista previa



Controles




Codigo fuente

----------------------------------------------------------------------------------------------------------------

Dim num1 As Long, igu As Boolean, operacion As Boolean, signo As String


Private Sub cmdCE_Click()
num1 = 0
num2 = 0
txtLetrero.Text = "0"
txtLetrero.SetFocus
operacion = False
signo = ""
End Sub

Private Sub cmdDiv_Click()
operacion = True
cmdIgual_Click
signo = "Div"
End Sub

Private Sub cmdIgual_Click()
Select Case signo
Case "Sum"
txtLetrero.Text = num1 + Val(txtLetrero.Text)
Case "Res"
txtLetrero.Text = num1 - Val(txtLetrero.Text)
Case "Mul"
txtLetrero.Text = num1 * Val(txtLetrero.Text)
Case "Div"
txtLetrero.Text = num1 / Val(txtLetrero.Text)
End Select
igu = True
txtLetrero.SetFocus
End Sub

Private Sub cmdMult_Click()
operacion = True
cmdIgual_Click
signo = "Mul"
End Sub

Private Sub cmdRes_Click()
operacion = True
cmdIgual_Click
signo = "Res"
End Sub

Private Sub cmdSum_Click()
operacion = True
cmdIgual_Click
signo = "Sum"
End Sub
Private Sub Form_Load()
num1 = 0
num2 = 0
operacion = False
igu = False
signo = ""
txtLetrero.Text = ""
End Sub

Private Sub txtLetrero_KeyPress(KeyAscii As Integer)
If txtLetrero.Text = "0" Then
txtLetrero.Text = ""
SetFocus
End If
If igu = True Then
num1 = Val(txtLetrero.Text)
txtLetrero.Text = ""
igu = False
End If
'Boton Sumar (cuando presionamos el signo + del teclado)

If KeyAscii = 43 Then
cmdSum_Click
End If
'boton Restar (cuando presionamos el signo - del teclado)
If KeyAscii = 45 Then
cmdRes_Click
End If
'Boton Multiplicar (cuando presionamos el signo * del teclado)

If KeyAscii = 42 Then
cmdMult_Click
End If
'Boton Dividir (cuando presionamos el signo / del teclado)
If KeyAscii = 47 Then
cmdDiv_Click
End If
'Boton Igual (cuando presionamos el intro o enter del teclado)
If KeyAscii = 13 Then
cmdIgual_Click
End If
End Sub


-------------------------------------------------------------------------------------------------------------------
Descargar el codigo fuente





Actualizando ......

viernes, 11 de septiembre de 2009

Bienvenidos al blog aprendiendo a programar en Visual Basic 6.0

En este blog les enseña aprender a programar en Visual Basic 6.0 desde el principio, tanto para novatos y para los que ya conocer un poco de Visual Basic 6.0.

Visual Basic 6.0 es un lenguaje de programación visual y muy fácil de aprender a usarlo para crear aplicaciones sencillas tanto como complejas en poco tiempo. Visual Basic 6.0 también es conocido como lenguaje de programación de cuarta generación, esto quiere decir que como su nombre lo dice que Visual Basic es totalmente visual, un gran numero de tareas se realizan sin escribir código ya que se hace con operaciones graficas utilizando el ratón para diseñar o dibujar la interfaz de la aplicación que se esta creando.

Visual Basic 6.0 es un programa basado en objetos aunque no orientado a objetos, Visual Basic utiliza objetos con propiedades y métodos. Los programas orientados a eventos son programas típicos de Windows ejemplos como Microsocf Word, Microsoft. Excel, Microsoft Power Point, cuando uno de estos programas arrancan lo único que hace es quedarse a la espera a las acciones del usuario, que en este caso son llamados eventos. Este tipo de programación es más complicada que la secuencial y la interactiva. Visual Basic 6.0  la hace más sencilla y agradable, Visual Basic 6.0 esta orientado a la realización de programas para Windows, incorpora todos los elementos del entorno informático de Windows tales como ventanas, botones, cajas de dialogo y de texto botones de selección y de opción, barras de desplazamiento, gráficos, menús y otros.


Visual Basic 6.0 esta puede trabajar de dos modos distintos: en modo de diseño y en modo de ejecución. En modo de diseño el usuario construye interactivamente la aplicacion colocando controles en el formulario, definiendo sus propiedades y desarrollando funciones para gestionar los eventos y en modo de ejecución el usuario actúa sobre el programa introduciendo eventos para probar la ejecución de la aplicación.

Conociendo Visual Basic 6.0


En este capitulo vamos a conocer las partes mas básicas de Visual Basic 6.0 tales como crear formularios y controles, objetos y propiedades, nombres de objetos , eventos, métodos, proyectos y ficheros, etc.

Al abrir Visual Basic 6.0 lo primero que vemos es una ventana de dialogo para elegir el tipo de aplicación que vamos a crear.



En este caso abrimos el de EXE Estándar y le damos abrir y ya se crea un formulario


  • Formularios y controles

Un formulario es una ventana o también conocido como un contenedor para los controles, una aplicación puede tener varios formularios pero un formulario es suficiente para crear una aplicación sencilla.



Un formulario tiene propiedades los más comunes es el nombre, caption (conocido como letrero o encabezado del formulario, Backcolor, BorderStyle, Enabled, MDIChild y otros. Y así todos los controles tienes sus propias propiedades algunos parecidos.


Los controles son los gráficos que forman parte de una aplicación, son controles para Visual Basic 6.0. los botones, las cajas de diálogo y de texto, las cajas de selección desplegables, los botones de opción y de selección, las barras de desplazamiento horizontales y verticales, los gráficos, los menús, y muchos otros tipos de elementos.


  • Objetos y propiedades


Los formularios y los distintos tipos de controles son entidades genéricas de las que puede haber varios ejemplares concretos en cada aplicación, en la programación orientada a objetos e estas entidades genéricas se llaman clase y se llama objeto a cada ejemplar de una clase determinada. En una aplicación puede haber varios botones (objetos) de tipo de control command button, todos estos botones seria la clase.



Cada formulario y cada tipo de control tienen un conjunto de propiedades que definen su aspecto gráfico (tamaño, color, posición en la ventana, tipo y tamaño de letra, etc.) y su forma de responder a las acciones del usuario (si está activo o no, por ejemplo). Cada propiedad tiene un nombre que viene ya definido por el lenguaje. Las propiedades de un objeto son datos que tienen valores lógicos (True, False) o numéricos concretos, propios de ese objeto y distintos de las de otros objetos de su clase.Las propiedades de los objetos pueden establecerse en tiempo de diseño y también en tiempo de ejecución


  • Nombres de los objetos

Cada objeto de Visual Basic 6.0 debe tener un nombre, con el nombre se hace referencia a dicho objeto. Visual Basic 6.0 proporciona nombres para los diversos controles pero e usuario o programador puede poner el nombre que el desee. Los nombres no solo identifican a dicho objeto sino también identifican el tipo de objeto y van seguidos de un número que se incrementa a medida que se van introduciendo más objeto de ese tipo en el formulario por ejemplo una caja de texto Text01 sigue Text02…

Los nombres por defecto no son adecuados porque hacen referencia al tipo de control, pero no al uso que de dicho control está haciendo el programador volvemos al ejemplo de la caja de texto, si utilizamos un objeto text01 para introducir el total de una venta es mas conveniente que el nombre del objeto sea “Total” así hace referencia al uso que se va a dar a ese control.

Ahora ya sabemos como poner un nombre de un objeto de acuerdo al uso que se va dar a ese control pero es recomendable agregar el nombre del control el tipo de control usando las abreviaturas para los controles (abajo se muestra la Tabla de las abreviaturas para los controles más usuales) por ejemplo el de caja de texto que tiene el nombre “Total” ahora va tener el nombre de “txtTotal”.



  • Eventos


Ya se ha dicho que las acciones del usuario sobre el programa se llaman eventos. Son eventos típicos el clicar sobre un botón, el hacer doble clic sobre el nombre de un fichero para abrirlo, el arrastrar un icono, el pulsar una tecla o combinación de teclas, el elegir una opción de un menú, el escribir en una caja de texto, o simplemente mover el ratón. Cada vez que se produce un evento sobre un determinado tipo de control, Visual Basic 6.0arranca una determinada función o procedimiento que realiza la acción programada por el usuario para ese evento concreto.




  • Métodos


Los métodos son funciones que también son llamadas desde programa, pero a diferencia de los procedimientos no son programadas por el usuario, sino que vienen ya pre-programadas con el lenguaje. Los métodos realizan tareas típicas, previsibles y comunes para todas las aplicaciones. Cada tipo de control tiene sus propios métodos (por ejemplo un formulario tiene sus métodos Hide que oculta el formulario Show que muestra el formulario otro ejemplo los controles de gráficos el Picturebox algunos de su métodos mas conocidos son Circle dibuja un circulo Cls limpiay los deja vacio)

  • Proyectos y ficheros

Cada aplicación que se empieza a desarrollar en Visual Basic 6.0 es un nuevo proyecto. Un proyecto comprende otras componentes más sencillas, como por ejemplo los formularios (que son las ventanas de la interface de usuario de la nueva aplicación) y los módulos (que son conjuntos de funciones y procedimientos sin interface gráfica de usuario).

¿Cómo se guarda un proyecto en el disco? Un proyecto se compone siempre de varios ficheros y hay que preocuparse de guardar cada uno de ellos en el directorio adecuado y con el nombre adecuado. Existe siempre un fichero con extensión *.vbp (Visual Basic Project) que se crea con el menu Archivo/Guardar Proyecto como. El fichero del proyecto contiene toda la información de conjunto. Además hay que crear un fichero por cada formulario y por cada módulo que tenga el proyecto. Los ficheros de los formularios se crean con Archivo/Guardar nombre archivo como teniendo como extensión *.frm. Los ficheros de código o módulos se guardan también con el Archivo/Guardar nombre archivo como y tienen como extensión *.bas si se trata de un módulo estándar o *.cls si se trata de un módulo de clase (class module). Es recomendable tener todo en orden los archivos de la aplicación que se va crear (por ejemplo que el proyecto se guarda en la carpeta del proyecto, en la carpeta proyecto se crea una carpeta con el nombre de Formularios y ahí se guardan los formularios y para los archivos .bas se crea otra carpeta aparte que llame Modulos y así sucesivamente se va creando mas carpetas dependiendo de tipo de ficheros que se va utilizando en el proyecto)


Variables


  • Variables y constantes

Una variable es un nombre que designa a una zona de memoria (se trata por tanto de unIdentificador), que contiene un valor de un tipo de información.

las variables pueden cambiar su valor a lo largo de la ejecución de un aplicación y los constantes son identificadores pero con la particularidad de que el valor que se encuentra en ese lugar de la memoria sólo puede ser asignado una única vez. El tratamiento y tipos de datos es igual al de lasvariables. Para declarar un dato como constante Únicamente es necesario utilizar la palabra Const en la declaración de la variable.

Tabla que muestra el alcance de las variables



  • Tipos de datos


Visual Basic 6.0 dispone de distintos tipos de datos aplicables para contantes y para variables.

Tabla que muestra los tipos de datos de Visual Basic 6.0