www.s-ejecutive.com 1



Documentos relacionados
Excel Macros. Pedro Chávez Lugo webpage: pedro. 17 de enero de 2014

Ejemplo de programa básico en Visual Basic. Option Explicit, Form, Dim, String, etc. (CU00310A)

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

Centro de Capacitación en Informática

PROCEDIMIENTOS Y FUNCIONES DE LA PROGRAMACIÓN (VISUAL BASIC)

Instructivo de Microsoft Excel 2003

FUNDAMENTOS DE INFORMÁTICA

La ventana de Microsoft Excel

CAPÍTULO 2 INTERFASE VISUAL BASIC 6.0

Fundamentos de la Programación

Programa completo de resolución de ecuaciones de 2º grado

MACROS Y FORMULARIOS

Programación: QBASIC

Tutorial Básico de vbscript

Visual Basic 1. Empleo de módulos y Procedimientos. Procedimientos definidos por el usuario

PRÁCTICAS DE GESTIÓN GANADERA:

Cómo nombrar variables ( 2&

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Curso de Excel Avanzado

Planilla de cálculo. Módulo II - OpenOffice.org Calc

Modulo 1 El lenguaje Java

Construcción de Escenarios

OPERADORES LÓGICOS Y DE COMPARACIÓN EN PHP. PRIORIDADES. EJEMPLOS. EJERCICIOS RESUELTOS. (CU00818B)

UNIVERSIDAD LIBRE DE COLOMBIA ELECTIVA IV VISUAL BASIC GUIA No. 1

Ejercicio 1. Desarrollar un pequeño juego para practicar mecanografía.

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE DE MEDELLÍN. FACULTAD NACIONAL DE MINAS Escuela de Sistemas

VISUAL BASIC Diseño de Formularios MDI y Menús - Proyectos Aplica

Resolver triángulos en Visual Basic. Parte 3/3

FORMACIÓN DE EQUIPOS DE E-LEARNING 2.0 MÓDULO DE DISEÑO Y PRODUCCIÓN DE MATERIALES UNIDAD 6 B

Tipos de variables en Visual Basic (integer, single, double, string, object, etc.). Ejemplos. (CU00308A)

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS

MATERIAL 2 EXCEL 2007

ESPOCH ESCUELA DE MEDICINA HERNANDEZ MAYRA FORMULAS Y DUNCIONES BASICAS ESPOCH

EMPEZAR A TRABAJAR CON VISUAL BASIC.NET

Uso del programa CALC

Enviar Felicitación Navideña por con Off. 2007

Un kilobyte (KB) son 1024 bytes, un Megabyte (MB) son 1024 KB, un Gigabyte son 1024 Mb

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática

Operadores lógicos y matemáticos en Visual Basic. Math. Comentarios en VB. Rem. Ejemplos. (CU00314A)

Incluimos una pequeña introducción al programa para aquellos profesores que quieran iniciarse en la programación a través de este entorno.

WinHIPE: edición, compilación y ejecución de programas; y generación de animaciones web. Manual de usuario.

AUTOR CARLOS EDUARDO BUENO VERGARA JORGE ARMANDO BUENO VERGARA USO DE LOS OBJETOS DEL PROGRAMA. Dfd INFORMÁTICA II PROFESOR. JOSÉ FRANCISCO AMADOR

Fórmulas y funciones

Introducción. Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales

EDICIÓN Y FORMATO (II)

A25. Informática aplicada a la gestión Curso 2005/2006 Excel Tema 7. Funciones avanzadas de Excel II

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

MANEJANDO FICHEROS Y CARPETAS

Introducción al diseño híbrido con ZW3D

Elementos de Microsoft Word

col Type mismatch cadena vacía fila 1 z + i 4 1 fila 2

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición.

MATEMÁTICAS CON LA HOJA DE CÁLCULO

NORMA (SEPA) 22/11/2013

BASES DE DATOS EN VISUAL BASIC ACCESS + SQL

SIIT SISTEMA INFORMÁTICO DE INSPECCIONES DE TRABAJO. Modulo de Planificación Manual de Usuario

CÓMO CREAR NUESTRO CATÁLOGO

Dependiendo de la utilización, forma y resultado deseado, Word propone diferentes columnas:

APUNTES DE WINDOWS. Windows y sus Elementos INSTITUTO DE CAPACITACIÓN PROFESIONAL. Elementos de Windows

Listados y Etiquetas personalizados de PrefGest WhitePaper Julio 2008

Impress : Programa de presentaciones de OpenOffice.

EDWIN KÄMMERER ORCASITA INGENIERO ELECTRÓNICO

La visualización de la ventana de Word tiene las siguientes partes:

Operación Microsoft Access 97

Ejemplos de conversión de reales a enteros

CREAR USERFORMS. Silvia Mayoral USER-FORMS

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

Funciones en Excel (II)

Índice general de materias LECCIÓN 7 74

Figura 1.1. Figura 1.2

Como se declara un vector en Visual Basic 6.0

INSTITUTO NACIONAL DE SAN JUAN OPICO

Bienvenido al sistema de Curriculum Digital CVDigital

LABORATORIO Nº 1 Sistemas de Información asociados a los Formularios en Excel

= C18+C19+C20+C21+C22 = SUMA(C18:C22) Con este sencillo ejemplo hemos querido demostrar que las funciones nos permiten simplificar los cálculos.

Funciones CONJUNTO EXCEL 2013 AVANZADO

- Access es un gestor de bases de datos relacionales gráfico e interactivo.

BASES DE DATOS - Microsoft ACCESS 2007-

Colegio Agustiniano Campestre Amor y Ciencia: Educamos la mente y el corazón

Instalación del programa PSPP y obtención de una distribución de frecuencias.

Proyectos de Innovación Docente

TUTORIAL DE PHP. M. en C. Erika Vilches. Parte 1.

Programa Presupuestos de Sevillana de Informática.

A continuación se describen cuáles son los elementos principales de las tablas, cómo crear una y cómo modificarla.

GUÍA DE TRABAJO N 3 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 10. Tema: APLICACIONES WINDOWS FORMS LENGUAJE C#

Operación Microsoft Access 97

Como hacer un troyano en Visual Basic 6.0

Sentencias o instrucciones en Visual BASIC

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.

COLEGIO APUNTES ACCESS

3.2 Operaciones aritmético-lógicas en Pascal

Capítulo 3: XML Spy como editor de documentos XML. 2. La interfaz de usuario de XML Spy

Curso Internet Básico - Aularagon

Manual de ayuda para crear y gestionar Tareas, como actividad evaluable

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Recursos de Aprendizaje

Otros Lenguajes de Programación

Transcripción:

www.s-ejecutive.com 1

Índice Introducción... 3 Trabajo con controles... 7 Propiedades de controles... 9 Programación orientada a objetos... 12 Escribir código... 14 Manejo de información... 19 Operaciones matematicas... 24 Manipulación de cadenas... 27 If. Then.else... 32 Select case... 36 Looping (bucles)... 40 Funciones I... 45 Funciones II... 49 Funciones III... 55 Funciones IV... 60 Funciones V... 62 Check box... 64 Radiobutton... 70 Aplicación Web... 73 Manejo de Errores... 75 Manejo de gráficos I... 80 Manejo de gráficos II... 82 Manejo de gráficos III... 85 Manejo de gráficos IV... 88 Manejo de gráficos V... 91 Manejo de gráficos VI... 94 Timer... 98 Animación... 102 www.s-ejecutive.com 2

1.-INTRODUCCIÓN Visual Basic 2010 es muy similar a la versión 2008 aunque ha añadido muchas nuevas funciones. Al igual que la versión 2008, Visual Basic 2010 es un lenguaje de Programación Orientada a Objetos por lo que ha sido incorporado al igual que que otros lenguajes como C++ o Java++ entre otros. De cualquier forma para comenzar a utilizar VB2010 no es necesario contar con conocimientos previos sobre la programación orientada a objetos. Cualquier persona que incluso esté familiarizada con Visual Basic 6 puede aprender muy fácilmente esta versión pues pese a los cambios y evoluciones del lenguaje, la interfaz y sintaxis de éste tienen la misma base. Para descargar la versión express de VB2010 podemos entrar a: http://www.microsoft.com/express/downloads/ El entorno integrado de Desarrollo (IDE)se muestra a continuación con sus principales elementos Nuevo Proyecto Abrir Propyecto que muestra una lista de proyectos recientes que se hayan realizado El panel de Inicio que muestra algunos tips que puedan ayudar rápidamente a desarrollar algunas aplicaciones El panel de Noticias incluye las noticias mas recientes acerca de Visual Basic 2010 Express. Tambien notifica las nuevas actualizaciones y desarrollos. La sección de Propiedades Para iniciar a crear la primera aplicación debemos dar click en Nuevo Proyecto. De manera que se muestre el siguiente cuadro de dialogo. www.s-ejecutive.com 3

El cuadro de dialogo ofrece 5 tipos de proyectos que se pueden crear. Para realizar la primera aplicación seleccionaremos Windows Form Application. En la parte inferior podemos indicar un nuevo nombre al proyecto. Una vez seleccionado y cambiado el nombre damos click en continuar. El entorno de trabajo que se muestra es muy similar al ofrecido en versiones tan antiguas como la versión 6.0. Consiste en mostrar un formulario vacio, el cuadro de herramientas flotante de lado izquierdo y el panel de propiedades de lado derecho. www.s-ejecutive.com 4

Cuadro de herramientas Ahora arrastraremos un control de botón al formulario, y cambiaremos el texto del botón a ok en el panel de propiedades, La palabra Ok se mostrará sobre el botón xomo se muestra en el ejemplo Para ingresar el codigo correspondiente daremos doble click sobre el boton y se abrirá la ventana de código en donde pondremos el código siguiente. www.s-ejecutive.com 5

Al ejecutar este código ya sea con el boton ó con la tecla F5 se mostrará el formulario y cuando demos click en el botón se mostrará el siguiente cuadro de dialogo(msgbox) Lista la primer aplicación hecha en Visual Basic. www.s-ejecutive.com 6

2.- TRABAJO CON CONTROLES Los controles en Visual Basic son herramientas que pueden ser ubicadas en el formulario para llevar a cabo muy diversas tareas. Son usadas para crear muchos tipos de aplicaciones en Windows. El diagrama de la derecha es la caja de herramientas en donde se encuentran los controles. Los controles están clasificados en controles comunes, contenedores, Menus, Barras de herramientas, Datos, Componentes, Impresión, cuadros de dialogo. Principalmente usaremos los controles comunes. Para insertar un control en el formulario basta con arrastrarlo desde la caja de herramientas. Una vez ubicado en el formulario podemos reubicarlo o cambiar su tamaño por medio de los nodos a nuestro gusto o necesidad. Al dar click en controles comunes se desplegarán los controles como en la imagen siguiente www.s-ejecutive.com 7

2.1 Control Text Box Ahora crearemos una calulador muy simple en pocos pasos, utilizaremos 2 TextBox para obtener numerous en ellos. 3 etiquetas y un botón. Los 2 textbox son para que el usuario pueda ingresar los números, una etiqueta es para mostrar el operador de suma (+), la otra etiqueta es para mostrar el signo de igual. La ultima etiqueta nos permitirá mostrar el total. El codigo del boton quedará de la siguiente forma Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Han dles Button1.Click Dim num1, num2, product As Single num1 = TextBox1.Text num2 = TextBox2.Text product = num1 + num2 Label1.Text = product De modo que al ejecutar el programa e ingresemos los numerous al dar click en el botón llevará a cabo la suma de estos. www.s-ejecutive.com 8

3- PROPIEDADES DE LOS CONTROLES Antes de escribir un procedimiento de evento para los controles, debemos establecer ciertas propiedades de los controles para definir la apariencia y como es que trabajará con los eventos. El panel de propiedades (3.2) nos permiten definir estos parámetros en el modo diseño. 3.1 3.2: The Properties Window El titulo de un formulario se define por medio de la propiedad Text del Formulario. Al igual que el titulo el nombre del control puede cambiarse en la propiedad Name teniendo en cuenta que no se deben utilizar espacios en el. En el panel de propiedades, en la parte superior se muestra el nombre del objeto seleccionado. En el resto de las filas se muestran de lado izquierdo los nombres de las propiedades y de lado derecho los valores predeterminados que traen consigo los controles. Tambien podemos cambiar las propiedades en modo de ejecución tales como, cambiar el color, forma, efectos de animación y algunas mas. El siguiente ejemplo cambia el color a amarillo cada vez que el formulario se carga. Visual Basic utiliza RGB para determinar los colores o bien algunos colores prestablecidos con nombre propio. La propiedad BackColor refiere del color de fondo de un objeto, en este caso se cambia el color de fondo del formulario www.s-ejecutive.com 9

La formula para asignar el color RGB al formulario es Color.FormArbg(RGB valores). Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Class Me.BackColor = Color.FromArgb(255, 0, 255) También podemos usar el siguiente procedimiento para cambiar el color en modo de ejecucion. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.BackColor = Color.Magenta Ambos procedimientos cambiarán el color de fondo del formulario una vez que se ejecute como se muestra en el ejemplo Enseguida se muestran algunos de los colores mas comunes con su código correspondiente. Siempre podemos jugar con varias combinaciones sin olvidar que los valores de los 3 colores RGB van de 0 hasta 255 como maximo. Colo Colo RGB code Color RGB code r r RGB Code 255,0,0 255, 255, 0 255, 165, 0 0,255,0 0, 255, 255 0, 0, 0 0, 0, 255 255, 0, 255 255, 255, 255 www.s-ejecutive.com 10

El siguiente programa nos permite ingresar los valores para cada color en 3 textbox diferentes y al dar click en el boton se cambiará el color de fondo del formulario Codigo Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim rgb1, rgb2, rgb3 As Integer rgb1 = TextBox1.Text rgb2 = TextBox2.Text rgb3 = TextBox3.Text Me.BackColor = Color.FromArgb(rgb1, rgb2, rgb3) www.s-ejecutive.com 11

4- PROGRAMACION ORIENTADA A OBJETOS En las primeras 3 lecciones hemos aprendido como ingresar codigo y ejecutarlo, sin entender al 100% la logica que se ha llevado a cabo. Ahora aprenderemos algunas reglas básicas que nos permitan entender la lógica con la que se va a programar. Antes que anda debemos entender que un lenguaje de POO debe contar con 3 tecnologias importantes(encapsulación, Herencia y polimorfismo) mismas que se definen a continuación. ENCAPSULACION.- se refiere a modulos autocontenedores que unen funciones procesadas a los datos. Estos tipos definidos por usuarios son llamados clases. Cada clase cuenta con datos y metodosque manipulan los datos. Los componentes de datos de una clase son llamados variables de instancias y una instancia de clase es un objeto. Por ejemplo, un sistema de librería, una clase podría ser un miembro, Carlos y Adriana serían 2 instancias(objetos) de una clase de librería. HERENCIA.- Las clases son creadas basadas en jerarquías y las herencias permiten a la estructura y los métodos heredar procesos y datos. Esto significa menos programación en sistemas complejos. Si un paso es agregado al final del código, entonces solo los datos y procesos asociados a este deben agregarse. El resto del paso es heredado. La habilidad de reusar objetos existents es considerada la major ventaja de esta tecnologia. Polimorfismo.- La POO permite procedimientos para la creación de objetos un mismo tipo, que no están definidos hasta el modo de ejecución. Por ejemplo, un cursor en en la pantalla puede cambiar su forma de una flecha a una línea dependiendo del modo de programa. Visual Basic 2010 permite a los usuarios escribir programas que se dividen en módulos. Estos modulos representan en el mundo real objetos y son conocidos como clases o tipos. Un objeto puede ser creado fuera de la clase se denomina instancia de clase. Una clase puede tener subclases. Por ejemplo, arboles de manzana es una subclase de la clase plantas y la manzana es una instancia de la clase de árbol de manzanas. Otro ejemplo es Estudiantes una subclase de la clase humano mientras Un chico llamado Armando es una instancia de la clase estudiante. Una clase consiste en miembros de datos y métodos. La estructura en vb2010 para definir la clase humano podrías escribirse de la siguiente forma. Public Class Human 'Data Members Private Name As String Private Birthdate As String Private Gender As String Private Age As Integer 'Methods Overridable Sub ShowInfo( ) MessageBox.Show(Name) MessageBox.Show(Birthdate) www.s-ejecutive.com 12

MessageBox.Show(Gender) MessageBox.Show(Age) End Class Despues de haber creado la clase humano, podemos crear una subclase que herede los atributos de datos de la clase humano. Por ejemplo, podríamos crear subclases de la clase humano sin necesidad de redefinir los miembros de datos. After you have created the human class, you can create a subclass that inherits the attributes or data from the human class. For example, you can create a students class that is a subclass of the human class. Under the student class, you don't have to define any data fields that are already defined under the human class, you only have to define the data fields that are different from an instance of the human class. Por ejemplo podriamos incluir el ID de estudiante y la direccion dentro de la subclase estudiante. El código seria como el siguiente. Public Class Students Inherits Human Public StudentID as String Public Address As String Overrides Sub ShowInfo( ) MessageBox.Show(Name) MessageBox.Show(StudentID) MessageBox.Show(Birthdate) MessageBox.Show(Gender) MessageBox.Show(Age) MessageBox.Show(Address) www.s-ejecutive.com 13

5- ESCRIBIENDO EL CODIGO En los módulos anteriores hemos visto la definición de las tecnologías de la programación orientada a objetos, asi como algunos códigos muy sencillos. 5.1 Procedimientos de evento VB2010 es un lenguaje que aparte de ser POO se basa en programación de eventos. De hecho, todas las aplicaciones de Windows son manejadas por eventos. Manejados por eventos significa que el usuario decide que hacer en el programa. Ya sea dar un click, escribir en un textbox, cerrar un cuadro, etc. Un evento esta relacionado a un objeto, es un incidente que pasa cuando el objeto y el usuario interactúan. Tal como dar click en un botón ó presionar una tecla. Una clase tiene eventos que se crean tanto con instancias de una clase u objetos. Al iniciar una aplicación de Windows vemos como se muestra un formulario vacio en el entorno de VB2010, este es de hecho la primer clase de formulario que hereda todos sus atributos desde la clase form System.Windows.Forms.Form, tal como se muestra en el panel de propiedades del Form1. www.s-ejecutive.com 14

Al dar doble click en algún lugar del formulario, veremos la ventana de código como se ve a continuación. Se muestra el objeto en el que dimos click. En este caso el evento es load form (cargar formulario) mismo que empieza con Private Sub y termina con End sub. Este procedimiento incluye la clase form y el evento Load, y estos están unidos por un guion bajo. Form_load esto no hace otra cosa mas que cargar el formulario. Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Class Existen otros eventos ligados al objeto Form como al dar click, al cambiar el cursor, al dar doble click, al arrastrarlo entre otras. www.s-ejecutive.com 15

5.2 Escribiendo codigo Ahora estamos listos para escribir el codigo para un procedimiento de evento que haga algo ams que solo cargar el formulario vacio. Todo el código debe encontrarse entre Private Sub y End sub. Agreguemos el siguiente código. Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) H andles MyBase.Load Me.Text = "My First VB2010 Program" Me.ForeColor = Color.ForestGreen Me.BackColor = Color.Cyan End Classs La primera linea de codigo cambia el titulo del formulario La segunda línea cambia el color de fuente a verde bosque Cabe mencionar que utilizar la palabra Se me refiere al formulario mismo por lo que si necesitamos cambiar estas propiedades de otros objetos debemos cambiar Me por el nombre del control www.s-ejecutive.com 16

Aca otro ejemplo Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim name1, name2, name3 As String name1 = "John" name2 = "Georges" name3 = "Ali" MsgBox(" The names are " & name1 & ", " & name2 & " and " & name3) En este ejemplo insertamos un boton en el formulario y cambiamos su texto a Display hidden names. La palabra clave Dim permite declarar las variables dentro de la rutina con un tipo de datos, por lo que las variables name1, name2 y name3 solo pueden contener texto (string). La función msgbox permite mostrar un cuadr de dialogo emergente con el mensaje entrecomillado unido a los nombres establecidos en las variables. www.s-ejecutive.com 17

www.s-ejecutive.com 18

6-Manejando Datos Existen muchos tipos de datos mismos que manejamos a diario en la vida real. Por ejemplo necesitamos manejar datos como nombres, direcciones, dinero, fechas, cantidades, estadísticas, etc. Al igual que en la vida cotidiana en VB debemos tener el control y orden de estos tipos de datos, algunos pueden ser matematicos, mien tras otros pueden contener textos. VB clasifica los tipos de datos en 2 grandes tipos que son numéricos y no-numéricos. Tipos Numéricos Los tipos numéricos son tipos de datos que consisten en números, mismos que puedan ser computados matemáticamente con varios operadores estándar tales como la suma, resta, división y otras mas. Algunos ejemplos de este tipo de datos pueden ser calificaciones, peso, altura, el numero de estudiantes en una clase, valores compartidos, costo de productos, pagos mensuales y muchos mas.en VB los tipos numéricos están divididos en 7 subtipos, dependiendo del rango de valores se pueden alojar. Hay cálculos que requieren números redondeados o datos sin precisión decimal pueden ser de tipo Integer o Long integer dependiendo de la longitud de valores. Programas que requieren números de alta precisión necesitan declararse como Single y Double, estos también son conocidos como flotantes. Para cálculos de dinero podemos utilizar Currency. Si por otro lado necesitamos aun mayor precisión en tanto a decimales, el tipo correspondiente es Decimal 6.1: Tipos de datos numericos Type Storage Range of Values Byte 1 byte 0 to 255 Integer 2 bytes -32,768 to 32,767 Long 4 bytes -2,147,483,648 to 2,147,483,648 Single Double 4 bytes 8 bytes -3.402823E+38 to -1.401298E-45 for negative values 1.401298E-45 to 3.402823E+38 for positive values. -1.79769313486232e+308 to -4.94065645841247E-324 for negative values 4.94065645841247E-324 to 1.79769313486232e+308 for positive values. Currency 8 bytes -922,337,203,685,477.5808 to 922,337,203,685,477.5807 Decimal 12 bytes +/- 79,228,162,514,264,337,593,543,950,335 if no decimal is use +/- 7.9228162514264337593543950335 (28 decimal places). www.s-ejecutive.com 19

6.1.2 Tipos de datos no-numericos Los tipos de datos no numéricos son datos que no pueden ser manipulados matemáticamente usando operadores aritméticos. Los datos no-numericos comprenden textos o cadenas de caracteres, fechas, booleanos que solo alojan 2 valores (true o false), objetos y variant. 6.2: Nonnumeric Data Types Data Type Storage Range String(fixed length) Length of string 1 to 65,400 characters String(variable length) Length + 10 bytes 0 to 2 billion characters Date 8 bytes Boolean 2 bytes True or False January 1, 100 to December 31, 9999 Object 4 bytes Any embedded object Variant(numeric) 16 bytes Any value as large as Double Variant(text) Length+22 bytes Same as variable-length string 6.1.3 Sufijos para literals Las literales son valores que asignamos a datos. En algunos casos, necesitamos agregar sufijos antes de las literales de modo que VB pueda manejar los cálculos. Por ejemplo podemos usar num=1.3089# para un tipo Double. Estos son algunos de los sufijos 6.3. Table 6.3 Suffix Data Type & Long! Single # Double @ Currency En adición necesitamos encerrar las de cadenzas con comillas dobles y las literales de fecha y hora con doble signo #. las cadenas pueden contener cualquier carácter, incluyendo números. membername="turban, John." TelNumber="1800-900-888-777" LastDay=#31-Dec-00# ExpTime=#12:00 am# www.s-ejecutive.com 20

6.2. Manejo de Variables Las variables son como buzones de correo en la oficina postal. El contenido de variables cambia en todo momento, tal como lo hacen los buzones. Las variables son areas alojadas enla memoria de la computadora para retener información. Tal como los buzones, cada variable debe tener un nombre. Por lo que cada nombre debe respetar las siguientes reglas. 6.2.1 nombres de variables Reglas para nombrar variables Debe tener menos de 255 caracteres No se permiten espacios No pueden empezar con números No se permiten puntos Estos son algunos ejemplos de nombres validos e inválidos My_Car ThisYear Valid Name Table 6.4 My.Car 1NewBoy Invalid Name Long_Name_Can_beUSE He&HisFather *& is not acceptable 6.2.2. Declaración de variables En VB necesitamos declarar las variables antes de usarlas asignándoles simultáneamente un nombre y los tipos de datos. Si fallamos al realizar este procedimiento el programa mostrará un error. Estas son normalmente declaradas en la sección general de códigos utilizando el estado Dim. El formato debe ser el siguiente Dim Variable Name As Data Type Ejemplo 6.1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim password As String Dim yourname As String Dim firstnum As Integer Dim secondnum As Integer Dim total As Integer Dim dodate As Date www.s-ejecutive.com 21

Podemos tambien combinarlas en una sola linea separándolas por comas Dim password As String, yourname As String, firstnum As Integer,... Para la declaración de cadenas, hay 2 formatos posibles, uno de ellos para la longitud variable de la variable y la otra para la longitud fija de la variable. Para las cadenas de longitud variable basta con usar el formato del ejemplo 6.1 anterior. Para la longitud fija de las cadenas se debe usar el siguiente formato Dim VariableName as String * n, donde n define el numero de caracteres que la cadena puede alojar. Ejemplo 6.2: Dim yourname as String * 10 yourname no puede alojar mas de 10 caracteres 6.2.3 Asignación de valores a variables Despues de declarar varias variables, podemos asignar valores a todas estas variables. El formato general de asignación es el siguiente: Variable=Expression La variable puede ser una variable declarada o el valor de la propiedad de un control. La expresión puede ser una expresión matematica, un numero, una cadena, un valor booleano, etc. Estos son algunos ejemplos: firstnumber=100 secondnumber=firstnumber-99 username="john Lyan" userpass.text = password Label1.Visible = True Command1.Visible = false Label4.Caption = textbox1.text ThirdNumber = Val(usernum1.Text) total = firstnumber + secondnumber+thirdnumber www.s-ejecutive.com 22

6.3. Constantes Las constants difieren de las variables en el sentido de que sus valores no cambian mientras se ejecuta el programa. 6.3.1 Declaración de constantes El formato es: Const Constant Name As Data Type = Value Ejemplo 6.3 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Const Pi As Single=3.142 Const Temp As Single=37 Const Score As Single=100 www.s-ejecutive.com 23

7- Operadores Matematicos La computadora puede realizar cálculos matematicos mucho mas rápido que un ser humano. De cualquier forma la computadora por si sola no es capaz de cálculos matematicos sin recibir instrucciones del usuario.en VB podemos escribir código para instruir a la computadora a que realice cálculos matematicos tales como una suma, resta, multiplicación, división y otro tipo de operaciones aritméticos. Con el fin de realizar cálculos matemáticos debemos involucrar varios operadores aritméticos. Los operadores aritméticos son muy similares a los utilizados en la vida cotidiana con solo algunas variaciones minimas. Los signos de mas y menos son los mismos mientras la multiplicación y la división usan * y / respectivamente. 7.1: Arithmetic Operators Operator Mathematical function Example + Suma 1+2=3 -- Resta 4-1=3 ^ Potencia 2^4=16 * Multiplicacion 4*3=12, (5*6))2=60 / Division 12/4=3 Mod Modulo 15 Mod 4=3 255 mod 10=5 \ División de enteros 19\4=4 Ejemplo 7.1 En este programa, necesitamos insertar 2 textbox, 4 etiquetas y un botón. Notar como los varios operadores aritméticos son usados dentro del código. Cuando ejecutas el programa, ralizará las 4 operaciones básicas y mostrará los resultados en las etiquetas. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim num1, num2, difference, product, quotient As Single num1 = TextBox1.Text num2 = TextBox2.Text sum=num1+num2 difference=num1-num2 product = num1 * num2 quotient=num1/num2 Label1.Text=sum www.s-ejecutive.com 24

Label2.Text=difference Label3.Text = product Label4.Text = quotient Ejemplo 7.2 El programa puede usar el teorema de Pitagoras para calcular la longitud de la hipotenusa, indicando la longitud de los lados adyacente (catetos). En caso de haber olvidado la formulad del teorema de Pitagoras se muestra a continuación. c^2=a^2+b^2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim a, b, c As Single a = TextBox1.Text b = TextBox2.Text c=(a^2+b^2)^(1/2) Label3.Text=c Ejemplo 7.3 IMC (Indice de masa corporal) Mucha gente esta obesa y podría ver afectada su salud seriamente. La obesidad es uno de los principales factores que brinda muchos problemas médicos según los expertos médicos. Incluyendo muerte por paro cardiaco. Si el IMC es mayor a 30, una persona es considerada obesa. Nos podemos basar en la siguiente tabla para conocer el estado del peso. Underweight = <18.5 Normal weight = 18.5-24.9 Overweight = 25-29.9 Obesity = BMI of 30 or greater Para calular el IMC, no tenemos que consultar al doctor, podemos solo usar un calculador o un programa hecho para computadora, esto precisamente es lo que pretendemos realizar. El calculador IMC es un programa VB que puede calcular el índice de masa corporal. Para calcular el IMC debemos usar la formula peso/(altura)2, donde el peso es medido en kg y la altura en metros. Si solo sabemos el peso y la altura en libras y pies, entonces tendremos que convertirlos al sistema métrico (podríamos incluir estos cálculos dentro de nuestro sistema) www.s-ejecutive.com 25

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArsgs) Handles Button1.Click Dim height, weight, bmi As Single height = TextBox1.Text weight = TextBox2.Text bmi = (weight) / (height ^ 2) Label4.Text = bmi La salida es mostrada en el siguiente diagrama. En este ejemplo la altura es de 1.8 mts(alrededor de 5 pies 11 pulgadas). El peso es de 75 kg(alrededor de 168lb), y el IMC es de 23.14815. La lectura sugiere que la persona es saludable Del ejemplo anterior, podemos ver que las operaciones aritmeticas son relativamente faciles. Aquí hay muchos proyectos aritméticos que podemos intentar. Area of a triangle Area of a rectangle Area of a circle Volume of a cylinder Volume of a cone Volume of a sphere Compound interest Future value Mean Variance Sum of angles in polygons Conversion of lb to kg Conversion of Fahrenheit to Celsius www.s-ejecutive.com 26

8- MANIPULACION DE CADENAS La manipulación de cadenas es una parte importante de la programación porque ayuda a procesar datos que vienen en el formulario como nombre, dirección, genero, ciudad, titulo de libro y mas. 8.1. Manipulacion de cadenas usando + y & Las cadenas pueden ser manipuladas usando los signos & y +, ambos llevan a cabo la concatenación que significa combinar 2 o mas cadenas en una sola mas grande. Por ejemplo, podemos unir visual y basic en visualbasic usando visual & basic o visual + basic como se muestra a continuación. Ejemplo 8.1 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim text1, text2, text3 As String text1 = "Visual" text2 = "Basic" text3 = text1 + text2 Label1.Text = text3 End Class La linea text3=text1+text2 puede reemplazarse por text3=text1&text2 y produciría el mismo resultado. En caso de que los datos fueran de tipo numérico solo podríamos utilizar el signo & pues generarn diferente resultado. Ejemplo 8.2 Dim text1, text3 as string Dim Text2 As Integer text1 = "Visual" text2=22 text3=text1+text2 Label1.Text = text3 Este codigo produce un error porque los datos no coinciden. En caso de utilizar & en lugar de + estaría bien. Dim text1, text3 as string www.s-ejecutive.com 27

Dim Text2 As Integer text1 = "Visual" text2=22 text3=text1 & text2 Label1.Text = text3 Puedes combinar mas de 2 cadenas como en el ejemplo siguiente Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim text1, text2, text3, text4, text5, text6 As String text1 = "Welcome" text2 = " to" text3 = " Visual" text4 = " Basic" text5 = " 2010" text6 = text1 + text2 + text3+text4+text5 Label1.Text = text6 End Class 8.2 La function Right La función Right extrae una parte de una cadena desde la derecha, el formato es: Right( cadena,n) Donde n corresponde al numero de caracteres que se desean extraer.p.e. Right( Ciudad de Mexico,5) Daría como resultado exico. www.s-ejecutive.com 28

Sin embargo la sintaxis del lenguaje nos obliga a escribirlo en el siguiente formato Microsoft.VisualBasic.Right("Phrase",n) Ejemplo 8.3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim text1 As String text1 = TextBox1.Text Label1.Text = Microsoft.VisualBasic.Right(text1, 4) El ejemplo anterior da como resultado los cuatro caracteres del contenido del textbox comenzando desde la derecha El motivo por el cual debe usarse la referencia completa es debido a que muchos objetos cuentan con la propiedad Right por lo que el lenguaje no podría indentificar a cual se refiere. 8.2 La función Left Ésta función trabaja de la misma forma que Right pero extrayendo caracteres desde la izquierda Microsoft.VisualBasic.Left("Cadena",n) Considerando el ejemplo anterior la sintaxis funcionaria asi: www.s-ejecutive.com 29

Microsoft.VisualBasic.Left ("Visual Basic", 4) = Visu. 8.2 Manipulación de cadenas usando funciones integradas Una función es similar a un procedimiento normal pero el principal propósito de una función es aceptar ciertas entradas y retornar un valor que se pase al programa principal para terminar la ejecución. 8.2. La función Len La función Length regresa un valor entero mismo que corresponde a la longitud de una cadena o una frase, incluyendo los espacios vacios. El formato es: Len( Cadena ) Por ejemplo: Len (Visual Basic) = 12 and Len (welcome to VB tutorial) = 22 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Label1.Text = Len(TextBox1.Text) End Class www.s-ejecutive.com 30

www.s-ejecutive.com 31

9- USANDO If...Then...Else Hasta ahora hemos aprendido como como programara codigo para aceptar informacion de los usuarios y mostrar un resultado sin controlar el flujo del programa. En este capitulo, aprederemos a escribir código que pueda tomar desiciones al procesar los datos de los usuarios, y y controlar el flujo del programa en el proceso. El proceso de tomar desiciones es una parte importante de la programación porque ayuda a resolver problemas inteligentemente de manera que provea salida de datos útil para el usuario. Por ejemplo podemos escribir un programa que pueda preguntar a la computadors para realizar varias tareas mientras se cumplan las condiciones o un programa que rechace valores no numéricos. En orden de llevar el control del flujo de programación y tomar desiciones, necesitamos usar operadores condicionales y operadores lógicos juntos con la estructura de control If. 9.1 Operadores condicionales Los operadores condicionales con herramientas muy poderosas. Estos operadores permiten a VB programar para comparar valores de datos y después decidir que acciones tomar, tales como ejecutar un programa o incluso finalizarlo entre muchas mas. Estos también son conocidos operadores de comparación numérica. Normalmente son usados para comparar 2 valores para ver si son iguales o si uno es mayor o menor que otro. La comparación retornará true o false según sea el caso. La siguiente tabla muestra los operadores condicionales. Tabla 9.1: Operadores Condicionales Operator = > < >= <= <> Meaning Igual a Mayor que Menor que Mayor o igual que Menor o igual que Diferente a 9.2 Operadores logicos Algunas veces podamos necesitar hacer mas de una comparación de tomar desiciones y realizar acciones. En este caso, usando operadores de comparación numérica solos no es suficiente, necesitamos usa operadores adicionales, y estos son los operadores lógicos. Estos operadores se muestran enseguida. Tabla 9.2 www.s-ejecutive.com 32

Operador And or Xor Not Significado Ambas condiciones deben ser true Al menos una condicion debe ser true Solo una condicion debe ser true Niega el true Normalmente los operadores son utilizados para comparar datos numéricos. De cualquier forma también podemos comparar cadenas de caracteres con estos operadores. La comparar cadenas hay algunas reglas que debemos toamr en cuenta. Las mayusculas con menores que las minúsculas, "A"<"B"<"C"<"D"...<"Z" y los numerosson menores que las letras. 9.3 If con operadores de comparación Para controlar efectivamente el flujo de programación. Debemos usar la estructura de control If junto a operadores lógicos y condicionales. Basicamente hay 3 tipos de estructuras de control If, If. Then, else y If then elseif. 9.3 El estado If Este es el estado mas simple de la estructura If ya que pide a la computadora que desarrolle ciertas acciones especificadas por expresiones si la condición se cumple. Mientras que si no se cumple la condición ninguna acción se llevará a cabo. El formato general de If es el siguiente If condicion Then Expresion End If Ejemplo 9.1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim mynumber As Integer mynumber = TextBox1.Text If mynumber > 100 Then Label2.Text = " Has ganado el premio mayor " End If Al ejecutar el programa e ingresar un numero mayor a 100, veremos Has ganado el premio mayor. Por otro lado, si el numero es menor o igual a 100 no veremos nada. 9.3 If Then else Al usar If then en la programación no son muy utiles y no proveen muchas opciones a los usuarios. Para brindar opciones, podemos usar If Then..else. esta estructura de control pide al computador que realice ciertas acciones especificadas en expresiones si la condicion es verdadera. Si la condición no se cumple, se pueden ejecutar expresiones declaradas en el estado Else. El formato es: www.s-ejecutive.com 33

If condicion Then expresion Else expresion End If Ejemplo 9.2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim mynumber As Integer mynumber = TextBox1.Text If mynumber > 100 Then Label2.Text = " Felicidades has ganado el premio mayor " Else Label2.Text = " Disculpa, pero no ganaste " End If Cuando ingresemos un valor mayor de 100 se mostrará la leyenda Felicidades has ganado el premio mayor y si no se cumple la condición se mostrará la leyenda Disculpa, pero no ganaste ejemplo 9.3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim mynumber, MyAge As Integer mynumber = TextBox1.Text MyAge = TextBox2.Text If mynumber > 100 And myage > 60 Then Label2.Text = " Felicidades has ganado el premio mayor " Else Label2.Text = " Disculpa, pero no ganaste " End If Este programa usa operadores logicos entrre las condiciones. Esto significa que amabs condiciones deben cumplirse para que se cumpla la condición. 9.3 Estado If...Then...ElseIf si hay mas de 2 opciones, podemos usar if then elseif de manera que tengamos mas opciones.el formato es: If condition Then VB expression www.s-ejecutive.com 34

ElseIf condition Then VB expression ElseIf condition Then VB expression.. Else VB expression End If Ejemplo 9.4 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Mark As Integer Dim Grade as String Mark = TextBox1.Text If mynumber >=80 Then Grade="A" ElseIf Mark>=60 and Mark<80 then Grade="B" ElseIf Mark>=40 and Mark<60 then Grade="C" Else Grade="D" End If www.s-ejecutive.com 35

10- USANDO SELECT CASE Otra estructura de control es Select case que difiere del If por la manera en que trabaja. La diferencia es que Select case básicamente solo evalua un objeto en una expresión de una dimensión. Mientras que if. Else if puede manejar multiples condiciones y de varias dimensiones. Select case es utilizado cuando existen multiples condiciones dado que ocupa mucho menos código que If else if. 10.1 La estructura de Select case El formato de esta estructura es el siguiente.- Select Case test expression Case expression list 1 Block of one or more VB statements Case expression list 2 Block of one or more VB Statements Case expression list 3 Block of one or more VB statements Case expression list 4. Case Else Block of one or more VB Statements End Select 10.1 Uso de Select Case Ejemplo 10.1 ' Examinación de grados Dim grade As String Private Sub Compute_Click( ) grade=txtgrade.text Select Case grade Case "A" Label1.Text="High Distinction" Case "A-" www.s-ejecutive.com 36

Ejemplo 10.2 Label1.Text="Distinction" Case "B" Label1.Text="Credit" Case "C" Label1.Text="Pass" Case Else Label1.Text="Fail" End Select Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Examinacion de calificaciones Dim mark As Single mark = mrk.text Select Case mark Case Is >= 85 Label1.Text= "Excellence" Case Is >= 70 Label2.Text= "Good" Case Is >= 60 Label3.Text = "Above Average" Case Is >= 50 Label4.Text= "Average" Case Else Label5.Text = "Need to work harder" End Select Ejemplo 10.3 El Ejemplo 10.2 puede reescribirse de la sig. manera: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Examinacion de calificaciones Dim mark As Single www.s-ejecutive.com 37

mark = Textbox1.Text Select Case mark Case 0 to 49 Label1.Text = "Need to work harder" Case 50 to 59 Label1.Text = "Average" s Case 60 to 69 Label1.Text= "Above Average" Case 70 to 84 Label1.Text = "Good" Case 85 to 100 Label1.Text= "Excellence" Case Else Label1.Text= "Wrong entry, please reenter the mark" End Select Ejemplo 10.4 Los gfrados en preparatoria son presentados usualmente mostradas con la letras en mayúsculas tales como A,B,C,D o E, en el ejemplo podemos ver como seria un código para este proceso. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventA rgs) HandlesButton1.Click 'Examination Marks Dim mark As Single mark = TextBox1.Text Select Case mark Case 0 To 49 Label1.Text = "E" Case 50 To 59 Label1.Text = "D" Case 60 To 69 Label1.Text = "C" Case 70 To 79 Label1.Text = "B" Case 80 To 100 Label1.Text = "A" Case Else Label1.Text = "Error, please reenter the mark" End Select www.s-ejecutive.com 38

Resultado del Ejemplo 10.4 www.s-ejecutive.com 39

11- LOOPING VB 2010 permite que un proceso sea repetido cuanta veces sea necesario y tanto el procesador como la memoria lo permitan. A este proceso se le llama looping (bucles). El looping se realice cuando necesitamos repetir un proceso varias veces mientras se cumpla una condición. Por ejemplo podemos diseñar un programa que sume una serie de numeros mientras la cantidad no exceda cierta cantidad, o un programa que solicite al usuario que introduzca datos repetidamente hasta que el usuario teclee la palabra finish. En vb2010, tenemos 3 tipos de bucles, son For Next, Do y While End while. 11.1 For.Next La sintaxis es: For contador = valor inicial to valor final(valor incremento) sentencias Next En algunos ocasiones es necesario salir del bucle sin que se cumpla el ciclo completo, el comando para hacerlo es Exit for. Es muy usual agregar Exit for dentro de un If para determinar si es necesario salir del bucle. Ejemplo 11.1 (a) Dim counter as Integer For counter=1 to 10 ListBox1.Items.Add (counter) Next * El programa inserta numerous del 1 al 10 en un listbox. Ejemplo 11.1 (b) Dim counter, sum As Integer For counter=1 to 100 step 10 sum+=counter ListBox1.Items.Add (sum) Next * El programa calcula la suma de los numeros como se muestra enseguida: sum=0+10+20+30+40+... Ejemplo 11.1(c) www.s-ejecutive.com 40

Dim counter, sum As Integer sum = 1000 For counter = 100 To 5 Step -5 sum - = counter ListBox1.Items.Add(sum) Next *Nota.- El incremento puede ser negative. El programa procesará una resta como la siguiente. 1000-100-95-90-... Ejemplo 11.1 (d) Dim n as Integer For n=1 to 10 If n>6 then Exit For End If Else ListBox1.Items.Add ( n) Next End If Next El proceso tarminará cuando n sea mayor que 6 11.2. Do El formato de Do es: a) Do While condición Loop b) Do sentencias www.s-ejecutive.com 41

sentencias Loop While condition c) Do Until condición Loop d) Do sentencias sentencias Loop Until condición * Salir del bucle Al igual que for a veces es necesario salir del bucle de manera anticipada, el comando usado es Exit Do. Ejeplo 11.2(a) Do while counter <=1000 TextBox1.Text=counter counter +=1 Loop * este código incrementará la counter en 1 mientras sea menor de 1000. Otra forma sería como esta: Do TextBox1.Text=counter counter+=1 Loop until counter>1000 Ejemplo 11.2(b) Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim sum, n As Integer www.s-ejecutive.com 42

ListBox1.Items.Add("n" & vbtab & "Sum") ListBox1.Items.Add("----------------------") Do n += 1 sum += n ListBox1.Items.Add(n & vbtab & sum) If n = 100 Then Exit Do End If Loop En este ejemplo encontramos una suma 1+2+3+4+...+100. En Diseño, necesitamos agregar un listbox al formulario para mostrar la salida. El programa usa el método Add para llenar el listbox.la sentencia ListBox1.Items.Add("n" & vbtab & "sum")mostrará los encabezados en el listbox, donde se utiliza vbtab para poner espacios entre el encabezado n y la suma. ListBox1.Items.Add(n & vbtab & sum) enlistará los numerous n y el valor de la suma. www.s-ejecutive.com 43

11.3 While.End while La estructura While es muy similar a Do While condición sentencias End white En este caso si la condición se cumple se llevarán a cabo las sentencias designadas, el bucle terminará cuando la condición se cumpla. Ejemplo11.3 Dim sum, n As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim sum, n As Integer While n <> 100 n += 1 sum = sum + n ListBox1.Items.Add(n & vbtab & sum) End While www.s-ejecutive.com 44

12- FUNCIONES Una función se similar a un proceso normal pero con el propósito de aceptar ciertos parámetros y regresar un resultado para finalizar la ejecución. Hay 2 tipos de funciones, las incorporadas del lenguaje y las creadas por el programador. El formato general para crear funciones es: FunctionName (parametros) Los parámetros con valores pasados al interior de la función. Podremos ver 2 funciones incorporadas del lenguaje muy utiles, el MSGBOX y el INPUTBOX. 12.1 Msgbox() El objetivo de los msgbox es mostrar un cuadro de dialogo para mostrar al usuario mensajes para que no siga el programa hasta que den click en el botón aceptar. yourmsg=msgbox(mensaje, estilo, titulo) El primer argumento Mensaje muestra el mensaje en el centro del cuadro de dialogo. El estilo determina que tipo de botones de comando se muestra el cuadro de dialogo, en la tabla 12.1 se muestran los posibles valores de este parámetro. El titulo muestra el titulo del cuadro. Tabla 12.1 Estilo Style Value Named Constant Buttons Displayed 0 vbokonly Ok button 1 vbokcancel Ok and Cancel buttons 2 vbabortretryignore Abort, Retry and Ignore buttons. 3 vbyesnocancel Yes, No and Cancel buttons 4 vbyesno Yes and No buttons 5 vbretrycancel Retry and Cancel buttons Podemos usar constante en lugar de enteros para el segundo parámetro, tal como poner vbokonly en lugar de 0. Ejemplo.- yourmsg=msgbox( "Click OK to Proceed", 1, "Startup Menu") y yourmsg=msg("click OK to Proceed". vbokcancel,"startup Menu") son lo mismo www.s-ejecutive.com 45

your Msg es una variable que almacena el resultado de la function Msgbox. El valor depende del tipo de botones usados por los usuarios. Estos tienen que ser declarados como enteros, la tabla 12.2 muestra los valores a las constantes correspondientes. Tabla 12.2 Valores retornados por los botones de comando Value Named Constant Button Clicked 1 vbok 2 vbcancel 3 vbabort 4 vbretry 5 vbignore 6 vbyes 7 vbno Ok button Cancel button Abort button Retry button Ignore button Yes button No button Ejemplo 12.1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim testmsg As Integer testmsg = MsgBox("Click to test", 1, "Test message") If testmsg = 1 Then MessageBox.Show("You have clicked the OK button") Else MessageBox.Show("You have clicked the Cancel button") End If www.s-ejecutive.com 46

Para mostrar los cuadros de dialogo de manera mas sofisticada, podemos agregar un icono que preceda el mensaje. Existen varios tipos de iconos disponibles como se muestran en la tabla 12.3 Tabla 12.3 Msgbos con iconos Value Named Constant Icon 16 vbcritical 32 vbquestion 48 vbexclamation 64 vbinformation Ejemplo 12.2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim testmsg As Integer testmsg = MsgBox("Click to Test", vbyesnocancel + vbexclamation, "Test Message") If testmsg = 6 Then MessageBox.Show("You have clicked the yes button") ElseIf testmsg = 7 Then MessageBox.Show("You have clicked the NO button") Else MessageBox.Show("You have clicked the Cancel button") End If El primer argumento, mensaje mostrará el sig. Cuadro.- www.s-ejecutive.com 47

12.2 INPUTBOX Un Inputbox muestra al usuario un cuadro de dialogo en el que el usuario puede introducir datos. mymessage=inputbox(prompt, Title, default_text, x-position, y-position) mymessage es tipo variant pero tipicamente declarado como string, el cual acepta el mensaje ingresado por el usuario. Enseguida se definen los parámetros: Prompt - El mensaje se mostrará como una pregunta. Title - el titulo del Input Box. default-text - el texto que se muestra de manera predeterminada en el campo de texto x-position y y-position la posición o las coordenadas del input box. Microsoft.VisualBasic.InputBox(Prompt, Title, default_text, x-position, y-position) Ejemplo 12.3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim usermsg As String usermsg = Microsoft.VisualBasic.InputBox("What is your message?", "Message Entry Form", "Enter your messge here", 500, 700) If usermsg <> "" Then MessageBox.Show(userMsg) Else MessageBox.Show("No Message") End If El inputbox aparece como en el siguiente ejemplo www.s-ejecutive.com 48

13- FUNCIONES II En esta lección veremos algunas funciones adicionales a las ya vistas. 13.1 Función Mid La función Mid es usada para extraer parte de una cadena tal como el formato lo indica.- Mid(oración,posición,n) Donde: oración es la cadena de la cual se extrae parte del texto. Posición Es la posición inicial del texto que se extraerá de la cadena. n es el numero de caracteres que serán extraidos de la cadenas. Ejemplo 13.1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim myphrase As String myphrase = Microsoft.VisualBasic.InputBox("Enter your phrase") Label1.Text = Mid(myPhrase, 2, 6) En el ejemplo cuando el usuario da click en el boton de commando, se muestra un inputbox pidiendo al usuario que ingrese una frase. Despues de ingresar una frase y se presiona el botón Aceptar, la etiqueta mostrará el texto extraido comenzando en la posición 2 y extrayendo 6 caracteres de modo que de el sig. Resultado. www.s-ejecutive.com 49

13.2 Función Right La función right extrae n numero de caracteres de una cadena tomando como inicio el extremo derecho de la cadena. Microsoft.Visualbasic.Right ("cadena", n) Donde n equivale al numero de caracteres a extraer y cadena la cadena de la cual extraeremos los caracteres. Microsoft.Visualbasic.Right ("Visual Basic", 4) = asic Ejemplo 13.2 el siguiente codigo extrae los ultimos 4 caracteres de cuqluier frase ingresada. Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim myword As String www.s-ejecutive.com 50

myword = TextBox1.Text Label1.Text = Microsoft.VisualBasic.Right (myword, 4) 13.3 Función Left Al igual que la función Right extrae parte de la cadena solo que en esta ocasión toma como referencia el extremo izquierdo. Microsoft.Visualbasic.Right ("cadena", n) Microsoft.Visualbasic.Left("Visual Basic", 4) = asic Ejemplo 13.3 Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim myword As String myword = TextBox1.Text Label1.Text = Microsoft.VisualBasic.Left (myword, 4) 13.4 Función Trim La función Trim quita los espacios en blanco al inicio y al final de una cadena Trim("Phrase") www.s-ejecutive.com 51

p.e. Trim (" Visual Basic ") = Visual basic Ejemplo 13.4 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim myphrase As String myphrase = Microsoft.VisualBasic.InputBox("Enter your phrase") Label1.Text = Trim(myPhrase) 13.5 Función Ltrim La function ltrim quita los espacios en blanco al inicio de una cadena Ltrim("Phrase").p.e. : Ltrim (" Visual Basic")= Visual basic 13.6 Función Rtrim La function ltrim quita los espacios en blanco al final de una cadena Rtrim("Phrase").p.e. : Rtrim ("Visual Basic ")= Visual basic www.s-ejecutive.com 52

13.7 Función InStr La function InStr busca una subcadena, dentro de otra cadena y devuelve un entero con la posición inicial de la subcadena dentro de la cadena. Instr (n, cadena original,cadena a buscar) Donde n es la posición en donde la función comenzará a buscar, cadena original es la cadena en la que realizará la búsqueda y cadena a buscar es la cadena que buscará. Instr(1, "Visual Basic","Basic")=8 Podemos escribir código como el siguiente: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Label1.Text = InStr(1, "Visual Basic", "Basic") 13.8 Funciones UCase y LCase La función Ucase convierte una cadena a mayúsculas mientras LCase la convierte en minúsculas Microsoft.VisualBasic.UCase(cadena) Microsoft.VisualBasic.LCase(cadena) p.e. Microsoft.VisualBasic.Ucase("Visual Basic") =VISUAL BASIC Microsoft.VisualBasic.Lcase("Visual Basic") =visual basic 13.9 funciones Chr y Asc www.s-ejecutive.com 53

La función Chr regresa una cadena que corresponde al código ASCII mientras que la función Asc convierte el carácter ASCII al código ASCII correspondiente Chr(charcode) Y el format para la function Asc es Asc(Character) Ejemplos: Chr(65)=A, Chr(122)=z, Chr(37)=%, Asc("B")=66, Asc("&")=38 www.s-ejecutive.com 54

14-FUNCIONES III (Math) Dentro de los cálculos matemáticos es importante conocer las funciones matematicas que VB nos brinda. 14.1 Función Abs La función Abs regresa el valor absolute de un numero especifico. Sintaxis Math. Abs (numero) * La palabra Mathindica que la función Abs pertenece a la clase Math. 14.2 funcion Exp La function Exp de un numero esel exponent de n a la x potencia. e x. p.e., Exp(1)=e=2.71828182 Sintaxis Math.Exp (numero) Ejemplo: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim num1, num2 As Single num1 = TextBox1.Text num2 = Math.Exp(num1) Label1.Text = num2. www.s-ejecutive.com 55