lab9 visual basic - tripodmembers.tripod.com/geomatica_ii.cl/archivos/vb6_intro_cl.pdf · encontrar...
TRANSCRIPT
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
1
Programación con Visual Basic 6
Introducción y Repaso
Lab. Geomática IIDepto. Ingeniería Geográfica ~ USACH ~ CHILE
Profesor: Ing. Marcos Medina Tapia.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
2
Introducción. • Un programa informático es un conjunto de “órdenes”
que al ser ejecutadas dan lugar al software.• Estas “órdenes”, del programa, son escritas con un
lenguaje de programación.• Visual Basic, Visual C++, Java, Pascal son ejemplos
de lenguajes de programación.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
3
Tipos de programas • Programas secuencial (llamados también tipo batch): es un
programa que se arranca, lee los datos que necesita, realiza loscálculos e imprime o guarda los resultados.
• Programas interactivos: exigen la intervención del usuario en tiempo de ejecución, para suministrar datos o indicar el procedimiento mediante menús, limitando y orientando la acción del usuario.
• Programas orientados a eventos: Programas típicos de Windows que se caracterizan en que esperan las acciones del usuario, acciones denominadas como eventos.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
4
• Visual Basic es uno de los tantos lenguajes de programación que podemos encontrar hoy en día.
• Visual => hace referencia al método que se utiliza para crear la interfaz gráfica del usuario.
• Basic => hace referencia al lenguaje BASIC (Beginner´s All-purpose SymbolicInstruction Code) que fue creado en su versión original en el DartmouthCollege, dirigido a las personas que estaban interesadas en iniciarse en algún lenguaje de programación. Luego de sufrir varias modificaciones, en el año 1978 se estableció el BASIC estándar. La sencillez del lenguaje ganó el desprecio de los programadores avanzados por considerarlo "un lenguaje para principiantes".
• Primero fue GW-BASIC, luego se transformó en QuickBASIC y actualmente se lo conoce como Basic.
• Actualmente, Visual Basic ya no es más "un lenguaje para principiantes" sino que una perfecta alternativa para los programadores, de cualquier nivel, que deseen desarrollar aplicaciones compatibles con Windows.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
5
• Eventos: es una acción, como hacer clic, doble clic, presionar una tecla, mover el puntero del mouse, etc. Que el usuario debe realizar para que un objeto ejecute una acción determinada donde cada control responde a diferentes eventos, algunos de ellos tienen características comunes. Los eventos pueden Visualizarse en la ventana de código.
• Controles: Son los objetos que conforman la interfaz gráfica de un programa; a través de ellos, un usuario interactúa con la aplicación. Sus características pueden cambiarse por medio de la ventana propiedades.
• Propiedades: Son los datos que hacen referencia a un objeto o formulario. Ejemplo: Color de fondo del formulario, Fuente de texto de un TextBox.
• Objetos: Un objeto es una entidad que tiene asociado un conjunto de métodos, eventos y propiedades. Hay muchas clases de objetos, y por tanto, puede llegar a haber tantos métodos, eventos y propiedades distintas como objetos diferentes. Ejemplo: Una caja de texto (TextBox) en la cual podemos escribir cualquier línea es un objeto.
Conceptos relacionados a la programación orientada a objetos
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
6
Entorno de Visual Basic 6:• Barra de título: muestra el nombre del proyecto y del formulario que se está diseñando actualmente • Barra de menús: agrupa los menús despegables que contienes todas las operaciones que pueden llevarse a cabo
con Visual Basic 6.0.• Barra de herramientas estándar: contienen los botones que se utilizan con mayor frecuencia cuando se trabaja
con un proyecto. Simplifica la elección de opciones de los menús Archivo, Edición, Ver y Ejecutar; además, en el área derecha presenta la ubicación (coordenadas) y el tamaño del objeto seleccionado
• Ventana de formulario: es el área donde se diseña la interfaz gráfica, es decir, es donde se inserta elementos gráficos, como botones, imágenes, casilla de verificación, cuadros de listas, etc.
• Cuadro de herramientas: presenta todos los controles necesarios para diseñar una aplicación, como cuadros de texto, etiquetas, cuadros de listas, botones de comandos, etc.
• Ventana de proyecto: muestra los elementos involucrados en el proyecto, como formularios, módulos, controles, etc. Cada elemento puede seleccionarse en forma independiente para su edición.
• Ventana propiedades: muestra todas las propiedades del control actualmente seleccionado, en este caso muestra las propiedades del Form1, luego podemos ver que abajo dice "Form1 Form", lo que está en negrita es el nombre del objeto, y lo que le sigue es el tipo de objeto, en este caso es un Formulario (Form)
• Ventana de posición del formulario: muestra la ubicación que tendrá el formulario en la pantalla, cuando ejecute la aplicación.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
7
Ejemplo de un programa de Visual Basic'Programa que calcula el área de un círculo
Option ExplicitPrivate Sub Form_Load()
‘Declaración de variables Dim area As DoubleDim radio As DoubleConst PI = 3.141592653
'Input para la entrada de datos por el tecladoradio = InputBox("Ingrese el radio del círculo", "Ingresar", "")area = PI * radio * radio
'Mensaje para visualizar los datos en pantallaMsgBox ("El área del círculo es: " & area)
End Sub
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
8
Elementos de Visual Basic
• Comentarios• Constantes• Variables• Operadores• Sentencia de asignación• Estructuras de datos• Funciones y procedimientos• Funciones y procedimientos intrínsecos
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
9
Comentarios• Los comentarios permiten al programador poner notas
en el programa para facilitar su comprensión• Sintaxis: Para señalar una sentencia como comentario,
es necesario anteponer una comilla simple ( ’ )
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
10
Constantes • Una constante es un valor que no cambia durante la
ejecución del programa• Una constante puede ser un número o una cadena
alfanumérica• Sintaxis:[Public | Private] Const nombre_constante [As tipo] = valor
• Ejemplo:– Const PI = 3.141592653– Public Const Version = “4.0”
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
11
Variables• Una variable contiene un valor que puede ser
modificado a lo largo del programa• Cada variable tiene atributos:
– Nombre: característica que permite llamar a la variable– Tipo: determina los valores que puede tomar la variable
(números, alfanuméricos, etc.)– Ámbito: especifica la parte del programa donde es
reconocida para ser ocupada la variable.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
12
Nombres de las variables
• El nombre de la variable tiene que comenzar con una letra, con una longitud hasta de 255 caracteres, y debe ser único en su ámbito.
• Puede contener letras, número, incluso el caracter “_”.• No se puede utilizar:
– El punto – Los paréntesis– Palabras reservadas de Visual Basic (como For, Caption,
And,…)
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
13
Tipos de datos
fechas, permite operar con ellasDATE
cadenas de caracteres STRING
válido para valores de tipo monedaCURRENCY
admite valores decimales de doble precisiónDOUBLE
admite valores decimales con precisión simpleSINGLE
admite valores entre -2.147.483.648 y 2.147.483.647LONG
admite valores entre -32768 y 32767INTEGER
admite valores entre 0 y 255BYTE
Sólo admite 2 valores TRUE o FALSEBOOLEAN
CaracterísticasTipo
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
14
Declaración de variables
• La declaración de variables puede ser explícita o implícita. Aunque es aconsejable declarar la variable, anteponiendo la palabra Dim o Public, según el ámbito de la variable.
• La inicialización de variables es cero para variables numéricas, y es “” para variables alfanuméricas.
• Ejemplos:– Dim i As Integer– Dim nombre As String– Dim x As Double, y As Double
• La sentencia que obliga a realizar una declaración explícita es:Option Explicit
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
15
Operadores• Los Operadores permiten realizar operaciones, los
principales son:• Aritméticos:
• Exponencial ^• Cambio de signo –• Suma, resta +, -• Multiplicación, División *, /
• Concatenación:• Concatenar &, +
• Relacional:• Igual, Distinto, Mayor, Menor =, <>, >, >=, <, <=
• Lógico:• Negación, Y, O Not, And, Or
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
16
Sentencia
• Corresponde a una línea de texto que indica la operaciones a realizar, teniendo la siguiente estructura
variable = expresión
• Por ejemplo,Velocidad = distancia / tiempoPrecio_total = precio * 10
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
17
• Permiten tomar decisiones y realizar procesos repetidos.• If…Then…End if• Select Case• For…Next• While…Wend• Do…Loop• With…End With• Goto
Sentencia de control
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
18
Sentencia If
If condicion Thensentencia(s)1
[Elsesentencia(s)2]
End if
Ejemplo:If a > b then
Msgbox “a es mayor que b”Else
Msgbox “a es menor que b”End if
If condicion1 Thensentencia(s)1
[ElseIf condicion2 Thensentencia(s)2]
[Elsesentenci(a)n]
End If
Permite “tomar una decisión” de la acción a ejecutar basándose en un resultado boleano.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
19
Select Case
Select Case expresionCase etiq1
sentencia1[Case etiq2
sentencia2][Case Else
sentencia3]End Select
Permite ejecutar una de varias acciones en función del valor de una expresión.
Select Case xCase 1, 2, 3
Msgbox “Valor 1, 2 ó 3”Case 4, 5, 6
Msgbox “Valor 4, 5 ó 6”Case Else
Msgbox “Valor >= 7”End Select
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
20
For…Next
For variable = Valor1 To Valor2 [Step Valor3]Sentencias [Exit For]Sentencias
Next [variable]
Es un bucle que ejecuta una serie de sentencias, un número definido de veces.
La sentencia Exit For, permite salir del bucle antes de que termine normalmente
Dim i As Integer, suma As IntergerFor i = 1 To 99 Step 2
suma = suma + 1Next i
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
21
While…Wend
While condiciónsentencia(s)
Wend
Es un bucle que repite la ejecución de una serie de sentencia mientras una determinada condición sea verdadera.
i = 0While i < 20
i = i +1Wend
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
22
Estructuras de datos: matrices• Una matriz es un conjunto de datos contiguos, todos del
mismo tipo, que comparten un nombre en común y que es posible acceder a ellos mediante un valor que representa la posición dentro de la matriz.
• Sintaxis: Dim variable[(dimension)] [As Tipo]
donde variable: nombre de la matrizdimension: número de elementos de la matriz
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
23
Funciones y procedimientos
• La funciones son unidades que después de haber ejecutado una serie de sentencias, devuelven un valor específico.
• Los procedimientos se diferencian en que no devuelven ningún valor, solo ejecutan sus sentencias.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
24
• Sintaxis de procedimientos:[Private|Public] [Static] Sub nombre[(argumentos)]
sentencia(s)[Exit Sub]
End Sub
Para llamarlo, puede ser Call(nombre[(argumentos)])nombre[(argumentos)]
• Sintaxis de funciones:[Private|Public] [Static] Function nombre[(argumentos)] As tipo_variable
sentencias [Exit Function]
End Sub
Para llamarlo var = nombre[(argumentos)]
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
25
Funciones intrínsecas
Funciones matemáticas: nombre de variable: x
• Valor absoluto: Abs(x)• Exponencial: Exp(x)• Parte Entera: Int(x)• Logaritmo: Log(x)• Seno, coseno: Sin(x), Cos(x)• Raíz cuadrada: Sqr(x)
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
26
Funciones de caracteresnombre de variable: s
• Número de caracteres: Len(s)• Devuelve los n caracteres situados a la izquierda:
Left(s)• Devuelve los n caracteres situados a la derecha:
Right(s)• Devuelve una subcadena de caracteres de una ubicación m dentro
de la cadena con una longitud n Mid(s, m[, n])• Convierte una expresión en una cadena de caracteres:
Cstr(s)• Convierte una cadena a mayúsculas Ucase(s)• Convierte una cadena a minúsculas Lcase(s)
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
27
Otras funciones intrínsecas • Devuelve la fecha y hora actual: Now• Devuelve la fecha: Date• Devuelve la hora: Time
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
28
Proyectos
• En Visual Basic, se estructura distintos tipos de archivos (módulos) mediante la utilización de Proyectos. La extensión de un Proyectos es *.vbp, que contiene formularios, módulos de clase, archivos de Basic estándar (*.bas ), etc.
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
29
Controles
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
30
EventosPrivate Sub cmdCargar_Click
frmSecundario.ShowEnd Sub
Private Sub Form_Load()Msgbox(“Se inicio el formulario”)
End Sub
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
31
Menús
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
32
Creación de una calculadora simple
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
33
Definición de controles
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
34
Código
Option Explicit
Private Sub cmdDiv_Click()txtResult.Text = Val(txtOper1.Text) / Val(txtOper2.Text)lblOp.Caption = "/"
End Sub
Private Sub cmdProd_Click()txtResult.Text = Val(txtOper1.Text) * Val(txtOper2.Text)lblOp.Caption = "*"
End Sub
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
35
Private Sub cmdResta_Click()txtResult.Text = Val(txtOper1.Text) - Val(txtOper2.Text)lblOp.Caption = "-"
End Sub
Private Sub cmdSuma_Click()txtResult.Text = Val(txtOper1.Text) + Val(txtOper2.Text)lblOp.Caption = "+"
End Sub
Lab. Geomática II – Ingeniería Civil Geográfica25/04/2005
36