TO Desarrollo de Aplicaciones con Lenguajes Visuales

17
SISTEMAS OPERATIVOS 6 TO AÑO Desarrollo de Aplicaciones con Lenguajes Visuales Docente / Martin Murdaca Clase 3 UNIDAD 1 2 do cuatrimestre 2020 1. Presentación En primer les reitero a todos los alumnos que aún no han terminado aprovechen el transcurso de esta semana para completar las actividades. Ante cualquier inconveniente referido al uso del programa estaremos en contacto mediante este medio. Les recuerdo nuevamente que es importante y obligatorio ingresar todas las semanas por lo menos los días miércoles para leer y descargar todo el material de la semana. Ante cualquier inconveniente también podemos conectarnos a través de mi dirección de correo personal [email protected] Como tema nuevo, en esta clase trabajaremos con dos conceptos ya vistos en las materias precedentes de Programación: variables y constantes. Veremos la importancia de definir correctamente el tipo de variable, para impedir errores en el ingreso de las mismas, como para asegurar el uso eficiente de la memoria del sistema. En cuanto al alcance de las variables, aprenderemos tres niveles diferentes: locales del pro- cedimiento, privadas del formulario y públicas del proyecto. Para finalizar abordaremos la definición de constantes, identificadores que si bien tienen una estrecha relación con el tema variables, la diferencia más importante radica en que las primeras no cambian su valor durante la ejecución del programa como sí sucede con las va- riables.

Transcript of TO Desarrollo de Aplicaciones con Lenguajes Visuales

Page 1: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO

Desarrollo de Aplicaciones con Lenguajes Visuales

Docente / Martin Murdaca

Clase 3

UNIDAD 1

2do cuatrimestre 2020

1. Presentación En primer les reitero a todos los alumnos que aún no han terminado aprovechen el transcurso de esta semana para completar las actividades. Ante cualquier inconveniente referido al uso del programa estaremos en contacto mediante este medio.

Les recuerdo nuevamente que es importante y obligatorio ingresar todas las semanas por lo menos los días miércoles para leer y descargar todo el material de la semana. Ante cualquier inconveniente también podemos conectarnos a través de mi dirección de correo personal [email protected]

Como tema nuevo, en esta clase trabajaremos con dos conceptos ya vistos en las materias precedentes de Programación: variables y constantes. Veremos la importancia de definir correctamente el tipo de variable, para impedir errores en el ingreso de las mismas, como para asegurar el uso eficiente de la memoria del sistema. En cuanto al alcance de las variables, aprenderemos tres niveles diferentes: locales del pro-cedimiento, privadas del formulario y públicas del proyecto. Para finalizar abordaremos la definición de constantes, identificadores que si bien tienen una estrecha relación con el tema variables, la diferencia más importante radica en que las primeras no cambian su valor durante la ejecución del programa como sí sucede con las va-riables.

Page 2: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Desarrollo de los contenidos

Identificadores

Un identificador es el nombre con que se identifica a cualquier elemento de un programa (constantes y variables). Los identificadores tienen las siguientes características:

Deben comenzar con una letra.

No puede incluir un punto o un carácter de declaración de tipo (Las variables no pue-den contener símbolos como %, &, !, #, @ ó $).

No debe exceder de 255 caracteres.

No pueden ser palabras claves reservadas.

Son palabras claves, las reservadas por el lenguaje, tales como “If”, “For”, “Const”, etc. La mayoría de estas las veremos más adelante

Constantes

Una constante es un identificador que no cambia su contenido durante el transcurso del programa. Generalmente se utilizan para representar valores que aparecerán en muchos lugares del código. Por ejemplo:

Const max_personas as Byte=50 ‘más adelante en Tabla I Tipos de datos de variablesse des-cribirán los tipos de variables.

Es más fácil utilizar la constante en el código (sin importar el valor que contenga) que repetir varias veces el valor. Además si tenemos que modificar el valor de la constante, lo hacemos una sola vez (y así evitaremos tener que reemplazar varias veces el valor).

Por convención las constantes ingresadas por el programador se escriben en mayúsculas, para diferenciarlas fácilmente de las variables.

¿Qué es una variable?

Una variable es un nombre, una letra o un conjunto de letras que pueden almacenar tempo-ralmente un dato, el cual como su nombre lo indica puede variar durante la ejecución del programa. Es importante destacar que las variables solo se almacenan en la memoria del equipo, no en el disco, con lo cual, una vez interrumpido el programa estas pierden su valor.

Si Usted tuvo oportunidad de operar con Microsoft Excel, las celdas de la hoja de cálculo, son un ejemplo muy claro de lo que representa una variable. Cada celda de la hoja de Excel, puede almacenar cualquier tipo de dato (números, fechas, textos, etc.) y el contenido de cada celda puede variar mientras usted está trabajando con dichos datos.

2

Page 3: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

En la siguiente tabla se muestra los tipos de variables, junto a su intervalo de valores acep-tados

Tabla I Tipos de datos de variables

TIPO DE DATO INTERVALO DE VALORES

Byte 0 a 255 (sin signo)

Integer -2.147.483.648 a 2.147.483.647 (con signo)

Date 1/01/0001 al 31/12/9999

Single -3,4028235E+38 a -1,401298E-45 para los valores negativos; 1,401298E-45 a 3,4028235E+38 para los valores positivos

Double -1,79769313486231570E+308 a -4,94065645841246544E-324

para los valores negativos; 4,94065645841246544E-324 a 1,79769313486231570E+308

para los valores positivos

Boolean True o False

String Cadena de texto variable

Object Cualquier tipo puede almacenarse en una variable de tipo Object

Es importante definir el tipo de dato que va almacenar en la variable por dos moti-vos:

Validar errores en el ingreso del dato. Por ejemplo, no permitir el ingreso de una fecha en una

variable importe.

No definir variables con un tipo de datos mayor al que se necesita. Si estoy guardando la edad de una persona, el tipo más adecuado sería el Byte (más de 255 años seguro no vi-virá). Optar por integer, long o cualquiera de los otros sería un desperdicio de memoria.

Veamos un ejemplo. Imagine que está creando un programa para una frutería, que realice un seguimiento del precio de las manzanas. No sabe el precio de una manzana o la cantidad que se ha vendido hasta que no se produce realmente la venta.

Pueden usar dos variables para almacenar los valores desconocidos (vamos a llamarlos Pre-cioManzanas y ManzanasVendidas). Cada vez que se ejecuta el programa, el usuario especi-ficará los valores de estas dos variables. Para calcular las ventas totales y mostrarlas en un cuadro de texto llamado txtVentas, el código debería parecerse al siguiente:

txtVentas.Text = PrecioManzanas * ManzanasVendidas

La expresión devuelve un total distinto cada vez, dependiendo de los valores que indique el usuario. Las variables le permiten realizar un cálculo sin tener que saber antes cuáles son los valores especificados.

En este ejemplo, el tipo de dato de PrecioManzanas es Currency; el tipo de dato de Manza-nasVendidas es Integer. Las variables pueden representar otros valores como de textos, fe-chas, diversos tipos numéricos e incluso objetos.

3

Page 4: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Almacenar y recuperar datos en variables

Utilicen instrucciones de asignación para realizar cálculos y asignar el resultado a una varia-ble:

ManzanasVendidas = 10 ‘Se pasa el valor 10 a la variable.

ManzanasVendidas = ManzanasVendidas + 1 ‘Se incrementa la variable. Observe que el signo igual del ejemplo es un operador de asignación, no un operador de igualdad; el valor (10) se asigna a la variable (ManzanasVendidas).

Declaraciones Declarar una variable explícitamente es decirle al programa algo de antemano. Se declara una variable mediante la instrucción Dim, proporcionando un nombre a la variable:

Dim nombreVariable [As tipo] Tipo de dato: String, date, Integer, etc.

Dim edad as Byte

Dim nombre as String

Dim fecha_entrega as Date, precio as currency

Fíjense que en todos los casos, siempre se asigna un nombre a la variable y el tipo de dato que contendrá. Ponga atención en la última línea, se definen dos variables, con un solo Dim. A esta manera de definir variables, se la conoce como declaración múltiple en línea.

Las variables que se declaran en un procedimiento mediante la instrucción Dim sólo existen mientras se ejecuta el procedimiento. Cuando termina el procedimiento, desaparece el valor de la variable. Además, el valor de una variable de un procedimiento es local de dicho pro-cedimiento; es decir, no puede tener acceso a una variable de un procedimiento desde otro procedimiento

Declaración implícita

No tienen por qué declarar una variable antes de usarla. Por ejemplo, se podría escribir una función donde no hiciera falta declarar Superficie antes de usarla:

Superficie=base*altura

Visual Basic crea automáticamente una variable con ese nombre, que puede usar como si la hubiera declarado explícitamente. Aunque es cómodo, puede provocar errores sutiles en el código si se equivoca de nombre de variable.

Por ejemplo, si vuelve a usar la variable pero en vez de escribir superficie escribe superfice. A primera vista, parece igual, pero como se ha escrito erróneamente la variable superficie Visual no puede averiguar si realmente desea declarar una variable nueva o simplemente ha escrito de forma errónea una variable existente, por lo que crea una variable nueva con ese nombre.

Solo podrá declarar variables implícitamente si está configurado el programa como Option Explicit Off. Para esto debe ir al menú Herramientas/Opciones y cambiar el valor predeter-minado On a Off. Observe la siguiente imagen:

4

Page 5: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Figura 1

Valores predeterminados de Visual Basic

Desde aquí podrá cam-

biarlo.

Declaración explícita

Para evitar problemas al equivocarse de nombre en las variables, puede estipular que Visual Basic le avise siempre que encuentre un nombre que no se haya declarado explícitamente como una variable.

Para declarar variables de forma explícita

Esta opción es la predeterminada del lenguaje. Puede revisarlo del mismo modo que se ex-plicó en el tema anterior. Véase

Figura 1.

Con esta declaración Visual Basic obliga a declarar todas las variables que serán utilizadas dentro del proyecto. Siguiendo con el ejemplo Superficie por ser una variables no declarada habría generado errores. Debería, por lo tanto, declararla explícitamente.

P/Ej:

Dim superficie as single

Es importante la declaración explicita de las variables porque:

Detecta variables no definidas

Detecta variables mal escritas

5

Page 6: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Asignación de valores

Para asignar un valor a una variable utilizaremos el operador de asignación “=”, situando del lado izquierdo la variable que recibirá el valor y del lado derecho el valor a asignar.

De acuerdo al tipo de variable cambiará los delimitadores a utilizar:

Variables numéricas: no necesitan ningún delimitador. En caso de escribir un numero con decimales se utilizara el punto (.) como carácter separador de decimales.

Ej: vImporte=1000

Cadena de caracteres: en este caso el valor se encerrará entre comillas dobles (“).

Ej: vNombre=”Matias”

Fechas: para las fechas tenemos dos opciones, encerrarlas entre comillas dobles (“) o numerales (#).

Ej: vFecha=”09/04/2011” ‘con el formato día/mes/año

Ej: vFecha=#12/30/2010# ‘con el formato mes/ día/año

Lógicos: este tipo de variables solo pueden contener los valores True (Verdadero) o False (Falso).

Ej: vEstado=True

Valor inicial

Todas las variables al declararlas arrancan con un valor inicial, salvo que le asignemos uno al momento de definirlas. Dependiendo de su tipo de dato, esto son los valores que pueden con-tener:

Numéricas= cero (0)

Cadena=cadena vacía (“”)

Fecha= 01/01/0001

Lógico= False

Object= valor nulo (Nothing)

Ámbito de las variables

El periodo de vida de una variable depende de su ámbito. Por esto vamos a clasificar las va-riables así:

Variables Locales: estas solo viven dentro del procedimiento desde el cual fueron declara-das. Se las declara con la instrucción Dim.

6

Page 7: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Variables Privadas: cuyo alcance va más allá del procedimiento donde fue declarada, ya que estas pueden invocarse desde cualquier procedimiento del formulario actual. Se las declara con la instrucción Private.

Variables Públicas: estas pueden invocarse desde cualquier procedimiento del proyecto ac-tual. Se las declara con la instrucción Public.

Operaciones Numéricas

Dentro de las operaciones que una variable puede realizar, se encuentran las operaciones de conteo y acumulación de información. Para llevarlas a cabo se utilizan dos estructuras que podemos definir acumuladores y contadores.

Acumuladores

Consiste en la operación de ir acumulando (sumando) cantidades variadas dentro de una variable.

Defino la variable a utilizar que será de tipo numérica, pero no necesariamente ente-ras.

Dim acumulo as integer

Cada vez que pase por esta instrucción agregará al contenido de la variable acumulo el contenido de la variable importe.

acumulo=acumulo+importe

Como vemos, la cantidad que aumentemos cada vez al contenido de la variable acumulo, dependerá del contenido de la variable importe en ese momento. Si el contenido de la va-riable importe es cero, no modificará el contenido de la variable acumulo y en el caso de que la variable importe tenga un valor negativo, reducirá el valor de la variable acumulo pudién-dolo dejar negativo o positivo.

Contadores

Consiste en la operación de ir acumulando (sumando) cantidades constantes dentro de una variable.

Defino la variable a utilizar que será de tipo numérica, pero no necesariamente enteras.

Dim conteo as integer

Cada vez que pase por esta instrucción incrementará el contenido de la variable conteo en 1.

7

Page 8: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

conteo=conteo + 1

Como vimos, básicamente las dos operaciones son iguales, pero en la primera el valor que incrementamos es variable y en la otra es un valor fijo. A continuación veremos en un nuevo proyecto ejemplificado el tema variables. No obstante ello, los dos tipos de variables defini-dos recientemente, serán utilizados en futuros proyectos de Visual Basic.

La función Inputbox()

La función Inputbox() muestra un mensaje en un cuadro de diálogo, espera que el usuario escriba un texto o haga clic en un botón, y luego devuelve en un tipo de dato String(tipo de datos que consiste en una secuencia de caracteres) el contenido del cuadro de texto.

Sintaxis

InputBox(mensaje[, titulo][, default][, xpos][, ypos])

Observe los argumentos de esta función en la siguiente figura:

Figura 2

Cuadro de diálogo InputBox()

La sintaxis de la función InputBox consta de estos argumentos:

Tabla II. Argumentos de la Función InputBox()

Parte Descripción

Prompt(Mensaje) Requerido. Expresión de cadena que se muestra como mensaje en el cua- dro de diálogo. La longitud máxima de prompt es de aproximadamente

1024 caracteres, según el ancho de los caracteres utilizados. Si prompt

consta de más de una línea, puede separarlos utilizando un carácter de

retorno de carro (Chr(13)), un carácter de avance de línea (Chr(10)) o una

combinación de los caracteres de retorno de carro-avance de línea (Chr(13)

y Chr(10)) entre cada línea y la siguiente.

Title (Título) Opcional. Expresión de cadena que se muestra en la barra de título del cuadro de diálogo. Si omite title, en la barra de título se coloca el nombre

de la aplicación.

8

Page 9: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Parte Descripción

Default(valor prede- Opcional. Expresión de cadena que se muestra en el cuadro de texto como terminado) respuesta predeterminada cuando no se suministra una cadena. Si omite

default, se muestra el cuadro de texto vacío.

Xpos Opcional. Expresión numérica que mide en píxeles, la distancia en sentido horizontal entre el borde izquierdo del cuadro de diálogo y el borde iz-

quierdo de la pantalla. Si se omite xpos, el cuadro de diálogo se centra ho-

rizontalmente.

ypos Opcional. Expresión numérica que especifica, en píxeles, la distancia en

sentido vertical entre el borde superior del cuadro de diálogo y el borde

superior de la pantalla. Si se omite ypos, el cuadro de diálogo se coloca a

aproximadamente un tercio de la altura de la pantalla, desde el borde su-

perior de la misma.

ypos Opcional. Expresión numérica que especifica, en twips, la distancia en sen- tido vertical entre el borde superior del cuadro de diálogo y el borde supe-

rior de la pantalla. Si se omite ypos, el cuadro de diálogo se coloca a apro-

ximadamente un tercio de la altura de la pantalla, desde el borde superior

de la misma.

Comentarios

Si el usuario hace clic en Aceptar o presiona Entrar, la función InputBox devuelve lo que ha-ya escrito en el cuadro de texto. Si el usuario hace clic en Cancelar, la función devuelve una cadena de caracteres de longitud cero ("").

Si desea omitir algunos argumentos de posición, debe incluir el delimitador de coma correspondiente. Por ejemplo, si quiero colocar un mensaje, y un valor predeter-minado,

pero no me interesa cambiar el título de la ventana, la coma correspondien-te a este argumento debe escribirla, para que la sintaxis de la función se considere correcta.

Antes de continuar con los ejemplos, los invito a ver el siguiente video donde resu-me que son las variables, para que sirven y los tipos de datos que pueden almacenar.

https://www.youtube.com/watch?v=OxgSFH4EoD4&ebc=ANyPxKqGQkMNY_K-aWovEte_y5iBcfYw5r21dmpO5CK_v9h4Gow6w8LUPFLcWoHhBhmvOSwsSIm8Vf4h-VT-AlzNbhx67mr5vQ

9

Page 10: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Veamos algunos ejemplos:

A continuación mostraremos distintas maneras de utilizar la función InputBox para indicar al usuario que debe introducir un valor. Si se omiten las posiciones x e y, el diálogo se centra automáticamente según los ejes respectivos. La variable Mivalor contiene el valor introduci-do por el usuario.

Ejemplo

vImporte = InputBox("Ingrese el monto de la venta", "Valores")

El ejemplo anterior el cuadro de dialogo muestra el mensaje, el título, el resto de los argu-mentos no se utilizan. (Véase Figura 3)

Figura 3

Demostración del Ejemplo

La clase MessageBox()

Es una clase del sistema. Permite mostrar un mensaje en un cuadro de diálogo, utilizando su método Show y una cadena de caracteres que pasaremos como parámetros.

Sintaxis

MessageBox.Show(Mensaje,[titulo],[Botones],[icon],[defaultbutton])

Observe los argumentos de esta función en la siguiente figura: Figura 4

Mensaje con MessageBox()

La sintaxis del método Show de MessageBox consta de estos argumentos: Tabla III. Argumentos de la función MessageBox.Show

10

Page 11: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Parte Descripción

Prompt(Mensaje) Requerido. Expresión de cadena que representa el Mensaje en el cuadro

de diálogo. La longitud máxima del Mensaje es de aproximadamente

1024 caracteres, según el ancho de los caracteres utilizados. Si el mensa- je consta de más de una línea, puede separarlos utilizando un carácter de

retorno de carro (Chr(13)) o un carácter de avance de línea (Chr(10)), o

una combinación de caracteres de retorno de carro – avance de línea

(Chr(13) y Chr(10)) entre cada línea y la siguiente.

Title(título) Opcional. Expresión de cadena que se muestra en la barra de título del cuadro de diálogo. Si se omite title, en la barra de título se coloca el

nombre de la aplicación.

Buttons(botones) Opcional. Indica que botón o combinación de ellos va utilizar.

Icons(iconos) Opcional. Indica que icono desea mostrar.

DefaultButton(botón por Se puede establecer cual de los botones indicados en el argumento ante- defecto) rior deseamos que aparezca seleccionado de manera predeterminada.

Valores del argumento buttons

Tabla IV. Valores para el argumento buttons

Constante Descripción

MessageBoxButtons.AbortRetryIgnor Muestra los botones Anular, Reintentar

e e Ignorar.

MessageBoxButtons.OK Muestra solamente el botón Aceptar.

MessageBoxButtons .OKCancel

Muestra los botones Aceptar y

Cancelar.

MessageBoxButtons .RetryCancel

Muestra los botones Reintentar y

Cancelar.

MessageBoxButtons .YesNo Muestra los botones Sí y No.

MessageBoxButtons.YesNoCancel Muestra los botones Sí, No y Cancelar.

Tabla V. Valores más utilizados para el argumento icons

MessageBoxIcon.Error Muestra el icono de mensaje crítico.

11

Page 12: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

MessageBoxIcon. Exclamation Muestra el icono de mensaje de advertencia.

MessageBoxIcon.Information Muestra el icono de mensaje de información.

MessageBoxIcon Question Muestra el icono de pregunta de advertencia.

Si desea omitir algún argumento de posición, debe incluir el delimitador de coma correspondiente.

Como usar las variables en sus programas

Vamos a crear una aplicación sencilla, para ejemplificar el uso de variables. Comenzará un proyecto Nuevo, y diseñará el formulario tal como lo muestra la Figura 5.

La idea del programa consiste en ingresar tres valores numéricos enteros, calcular y mostrar el promedio de estos tres valores.

Figura 5 Diseño del Formulario de Variables

Nombren al botón rotulado “Ingresar y Calcular” como bntPromediar. Hagan doble clic sobre él para entrar a la ventana de código. Ahora escriba lo siguiente:

Private Sub btnPromediar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPromediar.Click

‘Declaramos todas las variables de tipo entera

Dim vNro1, vNro2, Vnro3 As Integer

Dim vNro2 As Integer

Dim vNro3 As Integer

Dim vpromedio As Integer

‘Ingresamos los valores

vNro1 = InputBox("Ingrese el valor del Número 1", "Entrada de Valores")

vNro2 = InputBox("Ingrese el valor del Número 2", "Entrada de Valores")

vNro3 = InputBox("Ingrese el valor del Número 3", "Entrada de Valores")

‘Calculamos el promedio

12

Page 13: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

vpromedio = (vNro1 + vNro2 + vNro3) / 3

‘Mostramos el resultado

MessageBox.Show("El promedio es: " & vpromedio, "Resultado", MessageBoxButtons.OK, MessageBoxIcon.Information)

End Sub

Cierren la ventana de código. Ejecuten el proyecto. Hagan un clic sobre el botón programa-do, ingresen tres valores y finalmente el, programa mostrará el resultado.

Hasta el momento, ustedes han creado 4 variables, cada una de ellas locales al procedi-miento Clic del botón btnPromediar. Esto significa que las variables solo pueden ser utiliza-das dentro de ese procedimiento, ya que al salir de dicho procedimiento estas pierden su valor.

Por ejemplo: si tratáramos de mostrar el contenido de la variable vPromedio fuera de este procedimiento comprobaríamos que está vacía. Esto se debe a que las variables solo viven dentro del procedimiento desde el cual fueron declaradas (usando la instrucción Dim).

A este tipo de variables se las llama Variables Locales.

Para declarar una variable de manera tal, que puedan ser referenciadas desde cualquier ob-jeto del formulario, debemos utilizar la sentencia Private en lugar de Dim en la sección de Declaraciones.

Vamos a definir una variable nueva, la cual será privada del formulario actual. Hagan doble clic en cualquier punto libre del formulario y verán la pantalla de código, ubiquen el cursor debajo del inicio del formulario (Public Class Form1), y declaren la variable vpromedio tal como aparece en la siguiente imagen.

Figura 6 Declaración de variables privadas del formulario

Añadan un botón al formulario actual, y establezcan las siguientes propiedades: Text: Mostrar Resultado

Name: btnMostrar

Eliminen la declaración de la variable vpromedio ubicada dentro del evento click del botón btnPromediar y copien la porción de código donde mostrábamos el resultado al evento click del nuevo botón.

Resumiendo, así quedará el código completo del formulario…

13

Page 14: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Public Class Form1

Private vpromedio As Integer Private Sub btnPromediar_Click(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles Button1.Click

Dim vNro1 As Integer

Dim vNro2 As Integer

Dim vNro3 As Integer

vNro1 = InputBox("Ingrese el valor del Número 1", "Entrada de Valores") vNro2 = InputBox("Ingrese el valor del Número 2", "Entrada de Valores")

vNro3 = InputBox("Ingrese el valor del Número 3", "Entrada de Valores")

vpromedio = (vNro1 + vNro2 + vNro3) / 3

End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e

As System.EventArgs) Handles btnMostrar.Click

'Mostramos el resultado

MessageBox.Show("El promedio es: " & vpromedio, "Resultado", MessageBoxButtons.OK, MessageBoxIcon.Information)

End Sub

End Class

A este tipo de variables, cuyo alcance va más allá de un objeto del formulario, se la llaman Variables Privadas, ya que estas pueden invocarse desde cualquier objeto del formulario actual.

Guarden su proyecto como Actividad 5.

Finalmente vamos a crear como ultima aplicación del capítulo, un ejemplo de cómo utilizar variables públicas dentro de su proyecto.

Diseñen el formulario, tal como lo ilustra la siguiente imagen:

Figura 7. Diseño del formulario 1

Name: btnIngresar

Name: btnMostrar

Name: btnSalir

Name: btnSiguiente

14

Page 15: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Agregaremos un formulario más al proyecto actual desde el menú Proyecto/Agregar Win-dowsForm. Observen en la ventana de soluciones como se agrega el nuevo formulario como parte del proyecto actual.

Desde esta ventana puede seleccionar el form2, para trabajar con ese formulario. Diseñen los objetos que aparecen en la siguiente figura:

Figura 8. Diseño del formulario 2

Name: btnMostrarIVA

Name: btnAnterior

Para definir variables públicas debemos agregar un nuevo objeto al proyecto, un módulo. Como en el caso del formulario también desde el menú Proyecto/Agregar módulo…

En este objeto, que solo contiene código, se definen las variables y constantes públicas. De-clararemos una variable y una constante.

Figura 9. Declaración de variables dentro de un módulo

La ideal del programa consiste en ingresar el valor de la cuota y el porcentaje del aumento. El programa calculará el valor nuevo de la cuota y lo presentará desde el primer formulario. Luego se pasa al segundo formulario y al pulsar el botón se calculará y mostrará el valor de la cuota con el IVA incluido.

Métodos para mostrar y cerrar un formulario

Para pasar de un formulario a otro, y cerrar el formulario activo utilizaremos algunos de los métodos del formulario. A continuación presentamos los métodos de la clase Form que utili-zaremos en el proyecto.

Métodos del Formulario Descripción

Show () Muestra el formulario indicado

ShowDialog() Muestra el formulario como un cuadro de dialogo modal.

Close() Cierra el formulario activo.

15

Page 16: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Este será el código a programar en el formulario 1…

Public Class Form1 Private Sub btnIngreso_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnIngresar.Click

Dim vCuota As Single, vAumento As Single

‘Ingreso los valores de la cuota y del aumento

vCuota = InputBox("Ingrese el valor de la cuota", "Entrada") vAumento = InputBox("Ingrese el % del aumento", "Entrada")

‘Calculamos el nuevo valor de la cuota

vNcuota = ((vCuota * vAumento) / 100) + vCuota End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click

‘Mostramos el nuevo valor de la cuota

MessageBox.Show("La cuota con el aumento es de:" & vNcuota) End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click

‘mostramos en pantalla el formulario 2

Form2.ShowDialog() End Sub Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click

End End Sub

End Class

Este será el código a programar en el formulario 2… Public Class Form2 Private Sub btnMostrarIVA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrarIVA.Click

Dim vCuotaIva As Single

‘calculamos el valor de la cuota + IVA

vCuotaIva = (vNcuota * cIva) + vNcuota

MessageBox.Show("El valor de la cuota con el Iva incluido es:" & vCuotaIva) End Sub Private Sub btnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnterior.Click

Me.Close() Form1.Show()

End Sub

End Class

Guarden su proyecto como Actividad 6.

16

Page 17: TO Desarrollo de Aplicaciones con Lenguajes Visuales

SISTEMAS OPERATIVOS 6TO

AÑO CLASE 3

Con este último programa se presentó como utilizar variables o constantes públicas, Identifi-cadores declarados de tal manera que podamos invocarlo desde cualquier objeto del proyec-to actual.

TAREA

Desarrollen las actividades planteadas dentro de esta clase.

Recuerden que esta semana deben entregar los trabajos que están atrasados.

Cierre de la clase

Durante esta semana hemos visto que las variables son una ubicación en la memoria de la PC donde se almacenan los datos. Se puede cambiar el contenido de una variable, pero su nombre y su área de almacenamiento están reservados hasta que termine la ejecución del programa. Las variables y sus valores se pierden a menos que las guarden a disco antes de salir de Visual.

Vimos la importancia de definir correctamente el tipo de variable para impedir errores en el ingreso de las mismas, como para asegurar el uso eficiente de la memoria del sistema.

En cuanto al alcance de las variables, aprendimos tres niveles diferentes: locales del proce-dimiento, privadas del formulario y públicas del proyecto.

También abordamos el concepto de las constantes, identificadores que si bien tienen una estrecha relación con el tema variables, la diferencia más importante radica en que las pri-meras no cambian su valor durante la ejecución del programa.

Finalmente se construyó una aplicación, en la que declaramos las variables a utilizar, defi-nimos los tipos de datos y ubicamos las mismas según el nivel de alcance pretendido.

Les recomiendo leer detenidamente todo este documento y ante cualquier duda me consul-tan.

¡¡¡Les deseo a todos, que tengan una excelente semana!!

Martin Murdaca

17