71
UNIDAD 1 PROGRAMACIÓN VISUAL Entorno de la programación visual La programación visual permite diseñar y desarrollar aplicaciones con un entorno visual amigable y de fácil uso para el usuario. El entorno visual comprende la gran variedad de elementos gráficos como ventanas, botones, iconos, entre otros, que sirven para el diseño de aplicaciones y que se relacionan entre ellos para proporcionar funcionalidad a los programas. Existen varios lenguajes de programación de entorno visual, entre los cuales se citan Visual Basic, Visual C++, Visual C#, Delphi entre otros. Se considera un componente visual cuando tiene una representación gráfica en tiempo de diseño y ejecución (botones, barras de scroll, cuadros de edición, entre otros). Entorno de la programación orientada a objetos La programación orientada a objetos consiste en desarrollar programas como un conjunto de objetos, que colaboran entre ellos para realizar tareas. Algunos lenguajes de programación visuales han incorporado la programación orientada a objetos lo cual permite aprovechar al máximo la funcionalidad de los lenguajes el momento de desarrollar aplicaciones. Elementos de la Programación Visual Controles Un control en programación visual es esencialmente un componente con una representación visual. Los controles de usuario pueden incluirse en formularios Windows Forms de la misma manera que los demás controles. Los controles tienen propiedades, algunas de ellas coinciden para todos los controles por ejemplo: name, backcolor, size, y otras son específicas de cada control por ejemplo: ítems, checked. Cada control tiene varios eventos asociados que responden a una acción.

UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

UNIDAD 1 PROGRAMACIÓN VISUAL

Entorno de la programación visual La programación visual permite diseñar y desarrollar aplicaciones con un entorno visual amigable y de fácil uso para el usuario.

El entorno visual comprende la gran variedad de elementos gráficos como ventanas, botones, iconos, entre otros, que sirven para el diseño de aplicaciones y que se relacionan entre ellos para proporcionar funcionalidad a los programas.

Existen varios lenguajes de programación de entorno visual, entre los cuales se citan Visual Basic, Visual C++, Visual C#, Delphi entre otros.

Se considera un componente visual cuando tiene una representación gráfica en tiempo de diseño y ejecución (botones, barras de scroll, cuadros de edición, entre otros).

Entorno de la programación orientada a objetos La programación orientada a objetos consiste en desarrollar programas como un conjunto de objetos, que colaboran entre ellos para realizar tareas.

Algunos lenguajes de programación visuales han incorporado la programación orientada a objetos lo cual permite aprovechar al máximo la funcionalidad de los lenguajes el momento de desarrollar aplicaciones.

Elementos de la Programación Visual

Controles

Un control en programación visual es esencialmente un componente con una representación visual.

Los controles de usuario pueden incluirse en formularios Windows Forms de la misma manera que los demás controles.

Los controles tienen propiedades, algunas de ellas coinciden para todos los controles por ejemplo: name, backcolor, size, y otras son específicas de cada control por ejemplo: ítems, checked.

Cada control tiene varios eventos asociados que responden a una acción.

Page 2: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Eventos

Se activan a medida que se produce alguna acción en un objeto.

La mayoría de eventos son puestos en acción por el usuario cuando manipula un control en tiempo de ejecución.

En una aplicación de formularios Windows Forms, los eventos son generados por controles como botones, cuadros de lista, cuadros de verificación entre otros.

Como se citó anteriormente hay varios lenguajes de programación visual, en esta guía se trabaja con Microsoft Visual C# .net, a continuación se realiza una explicación del entorno de desarrollo.

Entorno de desarrollo en visual C# Visual C# es uno de los lenguajes de programación que conforman la Plataforma Visual Studio. Net.

Para instalar la aplicación se recomienda visitar la página web de Microsoft y descargar la versión Visual Studio Express 2012.

http://www.microsoft.com/es-es/download/details.aspx?id=34673

Para abrir la aplicación se sigue los siguientes pasos:

Primero se presiona el botón inicio y escoge la opción MICROSOFT VISUAL STUDIO 2010

Page 3: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Una vez abierta la aplicación en la página principal, crear un nuevo proyecto, elegir la opción NEW PROYECT

O también en menú opción archivo, nuevo y proyecto.

Luego muestra la siguiente ventana en la cual permite definir el proyecto.

Para iniciar un proyecto este tiene que estar seleccionado WINDOWS FORMS APPLICATION, en NAME colocar el nombre del archivo acorde a la aplicación y en LOCATION añadirla ubicación donde se quiere guardar la aplicación con el botón BROWSE.

Page 4: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

El .NET Framework 4 es la versión del marco de trabajo para esta versión de Visual studio.

Ventana Solution Explorer

En esta ventana se encuentra los archivos que forman parte de la aplicación, como por ejemplo los archivo Form1,Form2 pertenecen a los formularios o forms, el archivo programs.cs, references que son

Page 5: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

los archivos de referencias a los espacios de nombre, propiedades, el archivo del proyecto y la solución.

En el archivo PROGRAM.CS se encuentra el main, el mismo que permite la ejecución de la aplicación.

Permite cambiar los objetos Forms de ejecución mediante el método Run en la clase de Application.

Ventana Properties – propiedades

Muestra todas las propiedades que tiene cada control.

Page 6: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

En la ventana de propiedades el icono seleccionado permite visualizar los diferentes eventos que se puede aplicar a los diferentes controles.

Para entender el entorno de programación en el lenguaje C#, es importante hacer una revisón de los íconos que representan las clases, los métodos, los objetos, las propiedades.

Page 7: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

En la programación los métodos se identifica por

el ícono , una propiedad se lo identifica por

, un objeto se identifica por y un evento

se. identifica por .

Cuadro de herramientas: Permite visualizar los diferentes controles, componentes, orígenes de datos.

Toolbox: Barra donde se encuentran todos los controles,basta con arrastrar al formulario para usarlas.

Page 8: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Utilizando el icono mostrado se puede compilar y ejecutar el programa o también presionando la tecla F5 del teclado.

Permite generar solución e identificar los errores en el código antes de la ejecución.

En el explorador de soluciones la extensiónForm1.cs* es el archivo de código fuente y la segunda pestaña se tiene el Form1[Diseño]* donde se diseña la parte gráfica de la aplicación.

En el lenguaje en el momento de programar se visualiza los diferentes Espacios de nombres que tiene el Visual C#, y en cada una de ella tienen todas las diferentes clases.

Page 9: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Lo marcado indica que la clase Form1 hereda de la clase Form.

1. Elementos de interfaz gráfica

Windows Forms

Toda aplicación Windows Forms tiene su elemento principal denominado formulario o Form.

Form es un elemento donde se ubican el resto de controles visuales el momento de diseñar.

El Form no es nada más que la ventana que visualizará el usuario.

Propiedades:

Name: Permite dar nombre al formulario.

Nota: Utiliza el prefijo frm para identificará los formularios.

BackColor: Permite dar color de fondo del formulario, despliega una paleta de colores.

Page 10: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Icon: Permite cargar el archivo de extensión .ico, que contiene la imagen que identifica a la aplicación.

MaximizeBox: Permite activar el botón de control ubicado en la esquina superior derecha del formulario que permite maximizar el mismo, es decir ocupará toda el área del escritorio.

MinimizeBox: Permite activar el botón de control ubicado en la esquina superior derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio.

Text: Permite colocar el texto que aparecerá en la barra de título del formulario.

WindowState: Permite cambiar el estado del formulario en relación a su tamaño, puede tener tres estados normal minimizado y maximizado.

Control box: permite visualizar u ocultar los botones de control ubicados en la esquina superior derecha del formulario, tiene las opciones con true o false.

Eventos:

Load: Se ejecuta cuando se carga el formulario.

Show: Sirve para mostrar el formulario, no tiene parámetros.

Hide: Oculta el formulario

2. Controles de etiquetas y botones

2.1. Control Label

Es una etiqueta o leyenda de texto, se la utiliza para colocar títulos.

Propiedades:

Name: Utilizado para nombrar y poder identificar con facilidad cada “LABEL”.

Nota: utilizamos el prefijo lbl para identifica los label.

BackColor: Permite dar color de fondo.

Font: Permite personalizar el texto (tamaño y fuente).

Text: El contenido (texto) en el label.

Page 11: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

2.2. ControlButton

Representa un botón.

Propiedades:

Name:Permite nombrar al botón.

Nota: Se utiliza el prefijo btn para identificar las ventanas.

BackColor: Permite dar color al botón.

Text: Contenido del botón (texto).

Evento:

Click: El evento ocurre cuando el botón es oprimido (cuando el usuario da un click).

Ejercicio de aplicación 1:

Crear un programa en C# el cual muestra un mensaje al pulsar un botón.

Para el diseño del programa planteado se utiliza los siguientes controles con sus respectivas propiedades:

Diseño:

CONTROLES PROPIEDADES label1 Name: lblmensaje

Text: MI PRIMER PROGRAMA

label2 Name: lblmensaje2

button1 Name: btnmostrar

Text: Mostrar texto

Form1 Name: frmInicio

Text: Primera Aplicación

El formulario se visualizará de la siguiente manera:

Page 12: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Codificación:

using System; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Linq; usingSystem.Text; usingSystem.Windows.Forms; namespace WindowsFormsApplication1 { publicpartialclassfrminicio :Form { publicfrminicio() { InitializeComponent(); } privatevoidbtnmostrar_Click(object sender, EventArgs e) { lblmensaje2.Text = "EN C#"; } } }

Ejecución:

El resultado de ejecutar la aplicación es:

Page 13: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

3. Controles de cuadros de texto

3.1. Control TextBox

Es un control utilizado para el ingreso de información y/o despliegue de resultados.

Propiedades:

Name: Permite colocar un nombre al textbox.

Nota: Utiliza el prefijo txt.

ReadOnly: Impide el ingreso de texto en la ejecución

Multiline: Permite la introducción de varias líneas de texto en la ejecución.

Passowrchar: Indica el carácter que se debe mostrar cuando se escriben contraseñas en controles de edición de una sola línea.

Text: Permite introducir texto y se visualizará en la ejecución

Evento:

TextChange: Se ejecuta cuando se cambia un valor en un cuadro de texto.

3.2. Control MaskedTextBox

Utilizado para ocultar la información que el usuario ingresa, su uso común es en el ingreso de contraseñas.

Propiedades:

Name: Permite colocar un nombre al maskedTextBox.

El nombre que se coloque es ésta propiedad, es el que se utiliza en la codificación, es decir es el nombre para identificar el control.

Nota: Utiliza el prefijo msk.

ReadOnly: Utilizada solo para lectura del usuario.

Page 14: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

PasswordChar: Permite ocultar el texto sustituyéndolo por cualquier signo de preferencia (*).

Evento:

TextChange: Se ejecuta cuando se cambia un valor en un cuadro de texto.

3.3. Control RichTextBox

Es un control utilizado para el ingreso de información y/o despliegue de resultados es una herramienta parecida al textbox pero con mayor tamaño y espacio.

Propiedades:

Name: Permite colocar un nombre al Richtextbox.

Nota: Utilizar el prefijo rch.

Evento:

TextChange: Se ejecuta cuando se cambia un valor en un cuadro de texto.

Ejercicio de aplicación 2:

Crear un programa en C# el cual nos pida una usuario y contraseña para ingresar a un programa que resuelva un programa de dinámica

Nota: El usuarios es “UTE” y la contraseña “12345”.

Page 15: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Para el diseño del programa planteado se utilizará los siguientes controles con sus respectivas propiedades:

CONTROLES PROPIEDADES Form1 Name: Form1 Label1 Name: lbltitulo Text: ingreso a la aplicacion Label2 Name: lblusuario Text: USUARIO Label3 Name: lblcontraseña Text: CONTRASEÑA TextBox1 Name:txtusuario MaskedTexBox Name:txtcontraseña button1 Name:btningreso Text:INGRESAR Form2 Name:frmdinamica label1 Name: lbltitulo1 Text:APLICACIÓN DINAMICA label2 Name: lbltitulo2 Text:FISICA Label3 Name:lbldatos Text:DATOS Label4 Name:lblresultados Text:RESULTADOS Label5 Name:lblmasa Text:MASA Label6 Name:lblangulo Text:ANGULO Label7 Name:lblcoeficiente Text:COEFICIENTE Label8 Name:lblvo Text:V.INICIAL Label9 Name:lblvf Text:V.FINAL Label10 Name:lbldistancia Text:DISTANCIA Label11 Name:lblkg Text: (kg) Label12 Name:lblf Text: (F) Label13 Name:lblms1

Page 16: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Diseño:

El formulario se visualizará de la siguiente manera:

Ejecución:

El resultado de ejecutar la aplicación es:

Text: (m/s) Label14 Name:lblms2 Text :(m/s) Label15 Name:lblm Text :(m) button1 Name: btncalcular Text: CALCULAR RichTextBox1 Name:rchresultados Picturebox1 Name:pbxgrafica TextBox1 Name:txtmasa TextBox2 Name:txtangulo TextBox3 Name:txtcoeficiente TextBox4 Name:txtvo TextBox5 Name:txtcvf TextBox5 Name:txtdistancia

Page 17: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Codificación:

Form1

namespace Aplicacion_2 { publicpartialclassForm1 :Form { public Form1() { InitializeComponent(); } privatevoidbtningreso_Click(object sender, EventArgs e) { if (txtusuario.Text == "UTE"&&mskcontraseña.Text == "12345") { frmdinamicafrmingreso = newfrmdinamica(); frmingreso.Show(); this.Hide(); } else { MessageBox.Show("ACCESO NO VALIDO"); txtusuario.Text = ""; mskcontraseña.Text = ""; } } } } Frmdinamica

namespace Aplicacion_2 { publicpartialclassfrmdinamica : Form { double fuerza, aceleracion, vo, vf, dis, numerador, denominador, masa, gravedad, cofrozamiento, angulo; publicfrmdinamica() { InitializeComponent(); } privatevoidbtncalcular_Click(object sender, EventArgs e) { try { vo = Convert.ToDouble(txtvo.Text); vf = Convert.ToDouble(txtvf.Text); dis = Convert.ToDouble(txtdistancia.Text); masa = Convert.ToDouble(txtmasa.Text); cofrozamiento = Convert.ToDouble(txtcoeficiente.Text);

Page 18: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

angulo = Convert.ToDouble(txtangulo.Text); } catch { MessageBox.Show("Ingrese Datos Porfavor"); } gravedad = 9.8; aceleracion = ((0.5) * Math.Pow(vf, 2)) / dis; //Aplicar la formula d=vot+0.5at^2 y vf=vo+at numerador = (masa * aceleracion) + (masa* gravedad* Math.Sin(30)) + (cofrozamiento*masa*gravedad*Math.Cos(30)); denominador = (Math.Cos(angulo) - (cofrozamiento * Math.Sin(angulo))); fuerza = Math.Round( numerador / denominador); rchresultados.Text = "ACELERACION: " + " " + Convert.ToString(aceleracion) + " " + "m/s^2"+ "\n" + "FUERZA: " + " " + Convert.ToString(fuerza) + " " + " N "; } } } 4. Controles de selección

4.1. Control CheckBox

Es un control de selección múltiple.

Propiedades:

Name: Permite colocar un nombre al CheckBox.

Nota: Utilizar el prefijo chx.

Checked: Indica si la selección está habilitada o no.

Text: Contenido del CheckBox (texto).

Evento:

CheckedChanged:Se ejecuta cuando el control este seleccionado o no.

Page 19: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

4.2. Control RadioButton

Es un control de selección única.

Propiedades:

Name: Permite colocar un nombre al RadioButton.

Nota: Utilizar el prefijo rbn.

Checked: Indica si la selección está habilitada o no.

Text: Contenido del RadioButton (texto).

Evento:

CheckedChanged:Se ejecuta cuando el control este seleccionado o no.

Ejercicio de aplicación 3:

Crear un programa el cual que calcule movimiento rectilíneo uniforme, movimiento circular uniforme, caída libre, movimiento parabólico y sus respuestas estén distintos sistemas de medida y muestre graficas dependiendo en que movimiento se encuentra.

Diseño:

CONTROLES PROPIEDADES Panel1 Pnlcalculos Label1 Name: lbldistancia Text: distancia Label2 Name: lbltiempo Text: tiempo Label3 Name: lblvelocidad Text: velocidad TextBox1 Name:txtdistancia TextBox2 Name:txttiempo TextBox3 Name:txtvelocidad GroupBox1 Name:grxtransformaciones CheckBox1 Name:chcpulg Text: pulg/seg CheckBox2 Name:chcmil

Page 20: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

El formulario se visualizará de la siguiente manera:

Text: mil/milseg GroupBox2 Name:grxresultados Label4 Name:lblres1 Text:Distancia Label6 Name:lblres2 Text:Tiempo Label5 Name:lblres3 Text: Velocidad GroupBox3 Name:grxcinematica Text:Cinematica radioButton1 Name:rbnmcu Text:Movimiento rectilíneo

uniforme radioButton2 Name:rbnmru Text:Movimientocircular uniforme radioButton3 Name:rbncaida Text:Caida libre radioButton4 Name:rbnmovipara Text:Movimientoparabolico Picturebox1 Name:pbxmru Picturebox2 Name:pbxmcu Picturebox3 Name:pbxcaida Picturebox4 Name:pbxmovimip

Page 21: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Ejecución:

El resultado de ejecutar la aplicación es:

Codificación:

namespace clase_2_controles { publicpartialclassForm1 :Form { public Form1() { InitializeComponent(); } privatevoidrbnmcu_CheckedChanged(object sender, EventArgs e) { double revolucione; lbldistancia.Text = "Num-Revoluciones"; lblvelocidad.Text = "Vel- Angular"; revolucione = Convert.ToDouble(txtdistancia.Text) * 2 * Math.PI / 60; txtvelocidad.Text = Convert.ToString(Convert.ToDouble(revolucione) / Convert.ToDouble(txttiempo.Text)); lblres1.Text = "Num-Revoluciones";

Page 22: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

lblres3.Text = "Vel- Angular"; pbxmcu.Visible = true; pbxmru.Visible = false; pbxmovimip.Visible = false; pbxcaida.Visible = false; } //manejo del checkbox privatevoidrbnmru_CheckedChanged(object sender, EventArgs e) { pbxmcu.Visible = false; pbxmovimip.Visible = false; pbxcaida.Visible = false; if (rbnmru.Checked == true&&rbnmcu.Checked == false&&rbncaida.Checked==false&&rbnmovipara.Checked==false) { pbxmru.Visible = true; txtvelocidad.Text = Convert.ToString(Convert.ToDouble(txtdistancia.Text) / Convert.ToDouble(txttiempo.Text)); } // manejo del radiobutton privatevoidchcpulg_CheckedChanged(object sender, EventArgs e) { if (chcpulg.Checked == true&&rbnmru.Checked==true) { txtDist.Text = Convert.ToString(Convert.ToDouble(txtdistancia.Text) / 0.0254); txtTiem.Text = txttiempo.Text; txtVelo.Text = Convert.ToString(Convert.ToDouble(txtDist.Text) / Convert.ToDouble(txtTiem.Text)); } privatevoid Form1_Load(object sender, EventArgs e) { grxtransformaciones.Enabled = false; rbnmru.Checked=false; } privatevoidtxtvelocidad_TextChanged(object sender, EventArgs e) { grxtransformaciones.Enabled = true; } privatevoidchbmil_CheckedChanged(object sender, EventArgs e) { if (chbmil.Checked==true&&rbnmru.Checked==true) { txtDist2.Text = Convert.ToString(Convert.ToDouble(txtdistancia.Text) / 1000); txtTiem2.Text = Convert.ToString(Convert.ToDouble(txttiempo.Text)/1000); txtVelo2.Text = Convert.ToString(Convert.ToDouble(txtDist.Text) / Convert.ToDouble(txtTiem.Text)); } else {

Page 23: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

if (chbmil.Checked == true&&rbnmcu.Checked == true) { txtDist2.Text = Convert.ToString((Convert.ToDouble(txtdistancia.Text) * 60) / (2 * Math.PI * 1000)); txtTiem2.Text = txttiempo.Text; txtVelo2.Text = Convert.ToString(Convert.ToDouble(txtDist2.Text) / Convert.ToDouble(txtTiem2.Text)); } else { if (chbmil.Checked == true&&rbncaida.Checked == true) { txtDist2.Text = Convert.ToString(Convert.ToDouble(txtdistancia.Text) *1000); txtTiem2.Text = Convert.ToString(Convert.ToDouble(txttiempo.Text) *1000); txtVelo2.Text = Convert.ToString(Convert.ToDouble(txtTiem2.Text) / Convert.ToDouble(txtDist2.Text)); } else { if (chbmil.Checked == true&&rbnmovipara.Checked == true) { lblres1.Text = "V-inicial"; lblres2.Text = "tiempo"; lblres3.Text = "Altura-max"; txtDist2.Text = Convert.ToString(Convert.ToDouble(txtdistancia.Text) *1000); txtTiem2.Text = Convert.ToString(Convert.ToDouble(txttiempo.Text)); txtVelo2.Text = Convert.ToString(Convert.ToDouble(txtTiem2.Text) * Convert.ToDouble(txtDist2.Text)); } else { txtDist2.Text = ""; txtTiem2.Text = ""; txtVelo2.Text = ""; } } } } } privatevoidrbncaida_CheckedChanged(object sender, EventArgs e) { lbldistancia.Text = "V-inicial"; lbltiempo.Text="Altura"; lblvelocidad.Text = "Ti-caida"; txtvelocidad.Text = Convert.ToString(Convert.ToDouble(txttiempo.Text) / Convert.ToDouble(txtdistancia.Text)); lblres1.Text = "V-inicial"; lblres2.Text = "Altura"; lblres3.Text = "Ti-caida"; pbxmcu.Visible = false; pbxmru.Visible = false;

Page 24: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

pbxmovimip.Visible = false; pbxcaida.Visible = true; }

5. Controles de agrupación y ordenamiento

5.1. Control GroupBox

Un control el cual permite agrupar controles y tiene una leyenda en la parte superior izquierda.

Propiedades:

Name: Permite colocar un nombre al groupBox.

Nota: Utilizar el prefijo grp.

Text: El texto que se encuentra en la leyenda.

5.2. Control Panel

Un control el cual permite agrupar controles y también para realizar gráficas.

Propiedades:

Name: Permite colocar un nombre al panel.

Nota: Utilizar el prefijo pnl.

5.3. Control Tabcontrol

Un control el cual permite crear pestañas en el formulario.

Propiedades:

Name: Permite colocar un nombre al tabcontrol.

Nota: Utilizar el prefijo tbc.

TabPages: Permite personalizar cada una de las pestañas agregadas.

Evento:

Click: Tiene lugar cuando se hace clic en el componente.

Page 25: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Ejercicio de aplicación 4:

Realizar un programa en visual C#, en el cual calcule y grafique una ecuación lineal y otra de segundo grado.

Nota: el código estará dividido acorde se vayan aprendiendo otros controles.

Diseño:

El formulario se visualizará de la siguiente manera.

Ejecución:

El resultado de ejecutar la aplicación es:

CONTROLES PROPIEDADES Tabcontrol1 Name:TabControl1 Pestaña1 Text: INGRESO DATOS GroupBox1 Name:grxlineal GroupBox1 Name:grxecuacion

Page 26: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

6. Manejo de excepciones

6.1. Try-Catch

Permite controlar los posibles errores que se pueden generar durante la ejecución, consta de un bloque de código try en el cual se encuentran las posibles excepciones y un bloque catch en donde se programa la acción que se debe tomar

Ejemplo:

Control de excepciones de la aplicación 2 :

El try es usado en la parte del código que lee los datos del usuario la excepción se hace visible cuando el usuario no ingresa datos, por lo tanto del catch muestra un cuadro de texto pidiendo el ingreso de datos.

try { vo = Convert.ToDouble(txtvo.Text); vf = Convert.ToDouble(txtvf.Text); dis = Convert.ToDouble(txtdistancia.Text); masa = Convert.ToDouble(txtmasa.Text); cofrozamiento = Convert.ToDouble(txtcoeficiente.Text); angulo = Convert.ToDouble(txtangulo.Text); } catch { MessageBox.Show("Ingrese Datos Porfavor"); }

Page 27: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

7. Controles listas 7.1. Control ListBox

Un control el cual muestra una lista de elementos.

Propiedades:

Name: Permite colocar un nombre al ListBox.

Nota: Utilizar el prefijo lbx.

Items: Elementos en el cuadro de lista.

Count: Obtiene el número de elementos de la colección.

Evento:

Selectedindexcahnge; Se produce cuando se ha modificado la propiedad SelectedIndex.

MÉTODOS

Selectitem: Establece el elemento actualmente seleccionado en el control.

Selectindex: Establece el índice de base cero dele elemento actualmente seleccionado.

Clear(): Quita todos los elementos de la colección.

Remove(): Quita el objeto especificado de la colección.

Removeat(): Quita el índice especificado en la colección.

Add(): Agrega un elemento a la lista de elementos.

Addrange(); Agrega una matriz de elementos a la lista de elementos.

Ejercicio 5:

Se requiere visualizar los diferentes puntos de ejes, tanto de la ecuación lineal como la cuadrática.

Page 28: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

El formulario se visualizará de la siguiente manera

Ejecución:

El resultado de ejecutar la aplicación es:

Pestaña2 Text:RESULTADOS GroupBox3 Name:grxresullineal Text:Resultados de la ecuación

lineal GroupBox4 Name:groupBox1 Text:Resultados de la ecuación

cuadrática GroupBox5 Name:grxcuadratica Text:Resultados de la ecuación

cuadrática ListBox1 Name:lbxcuaX ListBox1 Name:lbxcuaY

Page 29: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Codificación:

namespace clase5_tabControl_Paint { publicpartialclassForm1 :Form { double a, b, a1, b1, c1; double[] valoresX = {-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10}; double[] valoresY = newdouble[21]; //los puntos limites para la grafica lineal int x11, y11,x22,y22; public Form1() { InitializeComponent(); } //codificación de la ecuación lineal y cuadratica privatevoid tabControl1_Click(object sender, EventArgs e) { int i; doublex,y; //puntos del vertice try { a = Convert.ToDouble(txtval1lineal.Text); b = Convert.ToDouble(txtval2lineal.Text); //calculo de puntos de corte con el eje x txtvalY.Text = Convert.ToString((a * 0 + b)); txtvalX.Text = Convert.ToString((-1 * (b / a))); //calculo y almacenamiento de los valores en x & y lbxvalorX.Items.Clear(); lbxvalorY.Items.Clear(); for (i = 0; i< 21; i++) { lbxvalorX.Items.Add(valoresX[i]); } for (i = 0; i< 21; i++) { lbxvalorY.Items.Add((valoresX[i] * a) + b); } //ayuda de variables a los valores les muiltiplico por 10 xq si no lo hago la grafica es disminuta. x11 = Convert.ToInt32(100 + (valoresX[0] * 10)); y11 = Convert.ToInt32(100 - ((valoresX[0] * a + b) * 10)); x22 = Convert.ToInt32(100 + (valoresX[20] * 10)); y22 = Convert.ToInt32(100 - ((valoresX[20] * a + b) * 10)); a1 = Convert.ToDouble(txtval1cua.Text); b1 = Convert.ToDouble(txtval2cua.Text); c1 = Convert.ToDouble(txtval3cuad.Text); x=(-1*(b1/2*a1));

Page 30: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

y=a1*(Math.Pow(x,2))+b1*x+c1; txtVerX.Text = Convert.ToString(x); txtVerY.Text = Convert.ToString(y); lbxcuaX.Items.Clear(); lbxcuaY.Items.Clear(); for (i = 0; i< 21; i++ ) { lbxcuaX.Items.Add(valoresX[i]); } for (i = 0; i< 21; i++) { lbxcuaY.Items.Add((a1*(Math.Pow(valoresX[i],2)))+(b1*valoresX[i])+c1); valoresY[i] = ((a1 * (Math.Pow(valoresX[i], 2))) + (b1 * valoresX[i]) + c1); } } catch (Exception) { MessageBox.Show("Ingrese los valores correctamente"); } }

7.2. Control ComboBox

Un control el cual permite seleccionar de una lista de opciones previamente cargadas en el combobox.

Propiedades:

Name: Permite colocar un nombre al comboBox.

Nota: Utilizar el prefijo cbx.

Items: Lista de opciones que son cargadas en el comboBox.

Count: Obtiene el número de elementos de la colección.

DropDownStyle: Comprueba la apariencia y funcionalidad del cuadro combinado.

Evento:

Selectedindexcahnge; Se produce cuando se ha modificado la propiedad SelectedIndex.

Page 31: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

MÉTODOS

Selectitem: Establece el elemento actualmente seleccionado en el control.

Selectindex: Establece el índice de base cero dele elemento actualmente seleccionado.

Clear(): Quita todos los elementos de la colección.

Remove(): Quita el objeto especificado de la colección.

Removeat(): Quita el índice especificado en la colección.

Add(): Agrega un elemento a la lista de elementos.

Addrange(); Agrega una matriz de elementos a la lista de elementos.

Ejercicio 6:

Se requiere una transformación de temperatura en todos los valores posibles.

Diseño:

El formulario se visualizará de la siguiente manera.

Ejecución:

El resultado de ejecutar la aplicación es:

ComboBox1 Name:cbxtemperatura1 ComboBox2 Name:cbxtemperatura2

Page 32: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Codificación:

string[] tem = { "CENTI", "FARA", "KEL", "RAN" }; privatevoid Form1_Load(object sender, EventArgs e) { cbxtemperatura2.Items.Add ("CENTIGRADOS"); cbxtemperatura2.Items.Add("FARANHEITH"); cbxtemperatura2.Items.Add("KELVIN"); cbxtemperatura2.Items.Add("RANKIN"); //cargar valores a un cobobox desde una array // cbxtemperatura2.Items.AddRange(tem); } privatevoid cbxtemperatura2_SelectedIndexChanged(object sender, EventArgs e) { double resultado,centi; txtconvertido.Text = ""; rchresultado.Text=""; if (cbxtemperatura1.SelectedItem.ToString() == "CENTIGRADOS"&& cbxtemperatura2.SelectedItem.ToString() == "FARANHEITH") { centi = Convert.ToDouble(txttemperatura1.Text); resultado = ((centi) * 1.8) + 32; txtconvertido.Text += (txttemperatura1.Text + "" + "gradoscentígrados" + "=") + Convert.ToString(resultado) + " " + "grados faranheith"; //resultado despregado en el richtextbox rchresultado.Text += "Resultado de la conversión" + "\r\n"; rchresultado.Text += txttemperatura1.Text +" "+"grados centigrados"+" "+"="+Convert.ToString(resultado)+" "+"grados faranheith"; } else { if (cbxtemperatura1.SelectedItem.ToString() == "FARANHEITH"&& cbxtemperatura2.SelectedItem.ToString() == "KELVIN") {

Page 33: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

centi = Convert.ToDouble(txttemperatura1.Text); resultado = (((centi) -32)/1.8)+273.15; txtconvertido.Text += (txttemperatura1.Text + " " + "grados farenheith" + "=") + Convert.ToString(resultado) + " " + "grados kelvin"; rchresultado.Text += "Resultado de la conversión" + "\r\n"; rchresultado.Text += txttemperatura1.Text + " " + "grados faranheith" + " " + "=" + Convert.ToString(resultado) + " " + "grados kelvin"; }

}

7.3. Control CheckedListBox

Un control el cual muestra una lista de elementos los cuales pueden ser elegidos o no.

Propiedades:

Name: Permite colocar un nombre al CheckedListBox.

Nota: Utilizar el prefijo chx.

Items: Lista de opciones que son cargadas en el CheckedListBox.

Evento:

SelectedIndexChanged: Se ejecuta cuando uno o varios ítems estén o no seleccionados.

Métodos:

Selectitem: Establece el elemento actualmente seleccionado en el control.

Selectindex: Establece el índice de base cero dele elemento actualmente seleccionado.

Clear(): Quita todos los elementos de la colección.

Remove(): Quita el objeto especificado de la colección.

Removeat(): Quita el índice especificado en la colección.

Add(): Agrega un elemento a la lista de elementos.

Addrange(); Agrega una matriz de elementos a la lista de elementos

Page 34: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

8. OTROS CONTROLES

8.1. Control Trackbar

Una barra la cual permite seleccionar un rango de valores.

Propiedades:

Name: Permite colocar un nombre al trackbar.

Nota: Utilizar el prefijo tck.

VALUE:Obtiene o establece un valor numérico que representa la posición actual del cuadro de desplazamiento en la barra de seguimiento

Evento:

Scroll: cuando se desplaza a cualquier rango de valores.

ValueChanged: sucede cuando hay cambios en el valor del control.

8.2. Control numericUpDown

Representa un cuadro de números.

Propiedades:

Name: Permite colocar un nombre al numericUpDown.

Nota: Utilizar el prefijo nup.

Evento:

Scroll:cuando se cambia el valor de la barra.

ValueChanged: sucede cuando hay cambios en el valor.

Page 35: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

9. Controles para Graficas

9.1. Control Picturebox

Es un cuadro de imagen, se puede subir imágenes y graficar.

Propiedades:

Name: Permite colocar un nombre al picturebox.

Nota: Utilizar el prefijo pbx.

Image: Imagen mostrada en el control.

Ejercicio 7:

Este control fue previamente utilizado en el ejercicio 3.

10. Menú

10.1 Menustrip

Ubicado en la parte superior del formulario, permite crear un sistema de menús.

Propiedades:

Name: Permite colocar un nombre al menú.

Page 36: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Nota: Utilizar el prefijo msn.

Text: El texto del menustrip.

Un menustrip contiene toolstripmenuItem.

ToolstripMenuItem: Corresponde a lasopciones que tiene el menú.

Propiedades:

Shorcut:Permite asignar a una opción del menú una combinación de teclas.

Por ejemplo: ctrl+x

Image: Indica la imagen asociada a la acción de una opción.

Para crear un formulario MDI: Buscar en el solución Explorer el nombre de la aplicación en este caso WindowsformsAplication2 click derecho ADD, NEW ITEM

Y se nos abre una ventana en esta ventana seleccionar WINDOWS FORMS, MDI PARENT FORM y finalmente oprimir el botón ADD

Page 37: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Aplicación:

Ejercicio de aplicación 8:

Crear un menú en el que se pueda ordenar las aplica ciones anteriores.

11. Componente Timer Componente el cual da frecuencia de eventos transcurridos en milisegundos.

Propiedades:

Page 38: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Name: Permite colocar un nombre al timer.

Interval: Frecuencia en milisegundos.

Métodos

Stop: Finaliza el temporizador.

Start: Inicia el temporizador

Ejercicio de aplicación9:

Realizar un programa en Visual C#, el cual muestra el estado de un motor (encendido o apagado),y mediante un combobox permita q la aplicación se haga manual o automáticamente.

Diseño:

CONTROLES PROPIEDADES ComboBox1 Item:Manual Item:Automatico Ovalshape Namje.shpestado pictureBox1 Name:pbx1 pictureBox2 Name:pbx2 Timer1 Name:Timer1

El formulario se visualizará de la siguiente manera:

Page 39: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Ejecución:

El resultado de ejecutar la aplicación es:

Codificación:

namespace clase4_Timer { publicpartialclassForm1 :Form { int x; public Form1() { InitializeComponent(); } privatevoid Form1_Load(object sender, EventArgs e) { shpEstado.Visible = false; x= DateTime.Now.Minute; // lblTiempo.Text = Convert.ToString(x); } privatevoidcbxTipo_SelectedIndexChanged(object sender, EventArgs e) { if (cbxTipo.SelectedIndex.ToString() == "0") { // btnApagar.Enabled = true; btnPrender.Enabled = true; timer1.Stop(); pbx2.Visible = true; pbx1.Visible = false; shpEstado.Visible = false; lblautomatico.Visible = false; lblsegundos.Visible = false; lblTiempo.Visible = false; } else

Page 40: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

{ lblintervalos.Visible = true; btnApagar.Enabled = false; btnPrender.Enabled = false; shpEstado.Visible = false; lblautomatico.Visible = true; lblsegundos.Visible = true; lblTiempo.Visible = true; timer1.Interval = 1000; timer1.Start(); shpEstado.BackColor = Color.Red; shpEstado.Visible = true; } } privatevoidbtnPrender_Click(object sender, EventArgs e) { lblencendido.Visible = true; lblapagado.Visible = false; shpEstado.BackColor = Color.Green; shpEstado.Visible = true; btnApagar.Enabled = true; btnPrender.Enabled = false; pbx1.Visible = true; pbx2.Visible = false; } privatevoidbtnApagar_Click(object sender, EventArgs e) { lblencendido.Visible = false; lblapagado.Visible = true; shpEstado.BackColor = Color.Red; btnApagar.Enabled = false; btnPrender.Enabled = true; pbx2.Visible = true; pbx1.Visible = false; } privatevoid timer1_Tick(object sender, EventArgs e) { x = DateTime.Now.Second; lblTiempo.Text = Convert.ToString(x); if (x > 0 && x < 30) { shpEstado.BackColor = Color.Red; pbx2.Visible = true; pbx1.Visible = false; lblapagado.Visible = true; lblencendido.Visible = false; } else {

Page 41: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

shpEstado.BackColor = Color.Green; pbx1.Visible = true; pbx2.Visible = false; lblapagado.Visible = false; lblencendido.Visible = true; } } } }

12. Gráfico de curvas

Para generar graficas primero necesitamos un espacio en donde hacerlo lo adecuado es hacerlo en un PictureBox o en un panel el cual será nuestro papel, mediante la programación se crea un lápiz, con los métodos empezar a graficar puntos y finalmente unir esos puntos.

Evento:

Paint: Ocurre cuando el control es redibujado.

Clases:

Point: Representa un punto de coordenadas en el espacio (x,y).

newPoint(7,6); Pen: Objeto utilizado para crear líneas y curvas

Brush: Pincel de colores estándares.

Graphics:Es la superficie de dibujo.

Metodos:

Drawline: Dibuja una línea utilizando dos puntos (point).

Ejercicio de aplicación 10:

El ejercicio es el complemento del ejercicio de aplicación 4, el tabcontrol 3 muestra gráficas de los datos anteriormente obtenidos.

Page 42: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Codificación:

//codificacion en el evento paint para la gráfica de la ecuación lineal privatevoidpbxlineal_Paint(object sender, PaintEventArgs e) { Penlapiz = newPen(Color.Black); Pen lapiz1 = newPen(Color.Red, 3); // en esta parte esto graficando mi recta cartesiana y el punto medio del picturebox e.Graphics.DrawLine(lapiz, 100, 0, 100, 200); e.Graphics.DrawLine(lapiz, 0, 100, 200, 100); //grafica de la recta e.Graphics.DrawLine(lapiz1, x11, y11, x22, y22); } //codificación en el evento paint para la gráfica de la ecuación cuadratica privatevoidpbxcuadratica_Paint(object sender, PaintEventArgs e) { Point[] puntos ={ newPoint(100+Convert.ToInt32(valoresX[0]*10),100-Convert.ToInt32(valoresY[0]*10)), newPoint(100+Convert.ToInt32(valoresX[1]*10),100-Convert.ToInt32(valoresY[1]*10)), newPoint(100+Convert.ToInt32(valoresX[2]*10),100-Convert.ToInt32(valoresY[2]*10)), newPoint(100+Convert.ToInt32(valoresX[3]*10),100-Convert.ToInt32(valoresY[3]*10)), newPoint(100+Convert.ToInt32(valoresX[4]*10),100-Convert.ToInt32(valoresY[4]*10)), newPoint(100+Convert.ToInt32(valoresX[5]*10),100-Convert.ToInt32(valoresY[5]*10)), newPoint(100+Convert.ToInt32(valoresX[6]*10),100-Convert.ToInt32(valoresY[6]*10)), newPoint(100+Convert.ToInt32(valoresX[7]*10),100-Convert.ToInt32(valoresY[7]*10)),

Pestaña3 Text:GRAFICAS Label28 Name:lbllineal Text:Grafica lineal Label29 Name:lblcuadratica Text:llbcuadratica Panel1 Name:lbllineal Panel2 Name:lblcuadratica

Page 43: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

newPoint(100+Convert.ToInt32(valoresX[8]*10),100-Convert.ToInt32(valoresY[8]*10)), newPoint(100+Convert.ToInt32(valoresX[9]*10),100-Convert.ToInt32(valoresY[9]*10)), newPoint(100+Convert.ToInt32(valoresX[10]*10),100-Convert.ToInt32(valoresY[10]*10)), newPoint(100+Convert.ToInt32(valoresX[11]*10),100-Convert.ToInt32(valoresY[11]*10)), newPoint(100+Convert.ToInt32(valoresX[12]*10),100-Convert.ToInt32(valoresY[12]*10)), newPoint(100+Convert.ToInt32(valoresX[13]*10),100-Convert.ToInt32(valoresY[13]*10)), newPoint(100+Convert.ToInt32(valoresX[14]*10),100-Convert.ToInt32(valoresY[14]*10)), newPoint(100+Convert.ToInt32(valoresX[15]*10),100-Convert.ToInt32(valoresY[15]*10)), newPoint(100+Convert.ToInt32(valoresX[16]*10),100-Convert.ToInt32(valoresY[16]*10)), newPoint(100+Convert.ToInt32(valoresX[17]*10),100-Convert.ToInt32(valoresY[17]*10)), newPoint(100+Convert.ToInt32(valoresX[18]*10),100-Convert.ToInt32(valoresY[18]*10)), newPoint(100+Convert.ToInt32(valoresX[19]*10),100-Convert.ToInt32(valoresY[19]*10)), newPoint(100+Convert.ToInt32(valoresX[20]*10),100-Convert.ToInt32(valoresY[20]*10)) }; Penlapiz = newPen(Color.Black); Pen lapiz1 = newPen(Color.Green, 3); // en esta parte esto graficando mi recta cartesiana y el punto medio del picturebox e.Graphics.DrawLine(lapiz, 100, 0, 100, 200); e.Graphics.DrawLine(lapiz, 0, 100, 200, 100); //grafica de la curva e.Graphics.DrawCurve(lapiz1, puntos); } } }

El formulario se visualizará de la siguiente manera.

Page 44: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Ejecución:

El resultado de ejecutar la aplicación es:

UNIDAD 2. COLECCIONES

Colecciones de datos

Permite trabajar con grupos de objetos, parecido a una matriz pero con la diferencia que las colecciones no se saben con exactitud el tamaño el tamaño.

Existen colecciones genéricas

Arraylist: Es una matriz que va aumenta su tamaño acorde la necesidad del programa.

Page 45: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

List:lista de objetos a los que se les puede ubicar por medio de índices.

Queue: Es una lista en el que el primero en entrar es el primero en salir.

Stack: Es una lista en el que el ultimo en entrar es el primero en salir.

Aplicaciones de Arreglos

Estructura de datos que pertenecen a un mismo grupo.

Forma de inicializar un array.

int[] array1 = newint[6]; int[] array2 = newint[6] { 1, 2, 3, 4, 5 ,6 };

Aplicaciones de Matrices

Conjunto de objetos que pertenecen a un mismo grupo, es un array en el cual se sabe con precisión el tamaño de la matriz.

Forma de inicializar una matriz

int[][] matriz1 = newint[][];

13. Control Datagriview

Permite guardar los elementos de una matriz o colección, permite agregar filas y columnas.

Propiedades:

Name: Permite colocar un nombre al datagriview.

Value: Estado actual de un control, disponible en tiempo de diseño y ejecución.

Countcolum: Contador columnas.

Countrow: Contador de filas.

Ejercicio de aplicación 11:

Page 46: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Realizar un programa en c#, que genere valores aleatorios de temperaturas, muestre en una matriz de tamaño que el usuario prefiere estos valores, cada columna muestra un día, el usuario debe escoger un día el cual se mostrará y se obtendrá un promedio.

Diseño:

CONTROLES PROPIEDADES TextBox1 Name:txtFil TextBox2 Name:txtCol button1 Name: btnDesplegar Text: Ver Temperaturas Button2 Name:btnpromedio Text:Promedio DataGridView Name:dgvMatriz ListBox1 Name:lbxvector TextBox3 Name:txtpromedio TextBox4 Name:txtpromedioR

El formulario se visualizará de la siguiente manera:

Ejecución:

El resultado de ejecutar la aplicación es:

Codificación:

publicpartialclassForm1 :Form { int i, j ,fil, col,pro; Random ale = newRandom(); // números aleatorios int[,] mat = newint[10, 10]; // matriz de 10 datos int[,] mat1 = newint[10, 10]; int[] promedio = newint[10]; // vector en el listbox

Page 47: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

public Form1() { InitializeComponent(); } privatevoid btnDesplegar_Click(object sender, EventArgs e) { for (i = 0; i < col; i++) { for (j = 0; j <fil; j++) { dgvMatriz[i, j].Value = ale.Next(1, 20); //el data gridview recorre todas la filas de cada columna hacia abajo, //hay que considerar el almacenaiento de la transpuesta mat1[j, i] = Convert.ToInt32(ale.Next(1, 20)); } lblMatriz.Text += "\r\n"; } } privatevoid txtCol_TextChanged(object sender, EventArgs e) { fil = Convert.ToInt32(txtFil.Text); col = Convert.ToInt32(txtCol.Text); dgvMatriz.ColumnCount = col; dgvMatriz.RowCount = fil; } privatevoid btnpromedio_Click(object sender, EventArgs e) { int p = 0; double x; pro = Convert.ToInt32(txtpromedio.Text); for (i = 0; i <col; i++) { for (j = 0; j < fil; j++) { if (i == (pro-1)) { lbxvector.Items.Add(dgvMatriz[i, j].Value); p = p + Convert.ToInt32(dgvMatriz[i, j].Value); } }

Page 48: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

//una variable para el promedio y j es el numero de filas x = (p / j); txtPromedioR.Text = Convert.ToString(x); } } } }

UNIDAD 3. ALMACENAMIENTO EN BASE DE DATOS

Conceptos generales de base de datos

Una base de datos es un conjunto de información que se liga de alguna forma y se encuentra catalogada para tener mejor acceso de la misma.

Un trabajo que lo realiza los servidores y computadores en las cuales se acumula la información y dichos datos se catalogan en forma ordenada y de fácil acceso por medio de un sistema que está definido como “SGBD” (sistema de gestión de base e datos), un software creado para tal fin.

Son muchas plataformas las creadas para este fin y muchos programas que logran leer y manejar este tipo de información, la cual con el tiempo se ha unificado en formatos compatibles.

Existen varias herramientas para diseñar una base de datos por ejemplo: MySql, SQL Server, Oracle, Db2, Postgres entre otros.

En esta guía se va a diseñar la bse de datos en SQL Server, para descargar el instalador se proporciona el siguiente link:

SQL Server 2012 Express

http://www.microsoft.com/es-es/download/details.aspx?id=29062

Elementos de una base de datos

Datos: Es la parte esencial de la información, es decir, la información que llega a la base de datos.

Atributos: Son los diferentes campos que conforman la estructura de una base de datos.

Campos: Es la unidad más pequeña de datos.

Page 49: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Registro: Es un conjunto de campos o atributos relacionados entre sí.

Archivo: Es un conjunto de registros relacionados.

Creación de base de datos

Un sistema de gestión de bases de datos (SGBD) es un conjunto de programas que permiten el almacenamiento, modificación y extracción de la información en una base de datos.

Proporcionar herramientas para añadir, borrar, modificar y analizar los datos.

Creación de una base de datos

• Nombre de la base • Determinación del tamaño

Page 50: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Creación de la tabla

La tabla contiene campos o atributos.

Cada campo tiene:

• Tipo de dato • Obligatoriedad

La tabla contiene una clave primaria conocida también comoCLAVE PRINCIPAL.

Es única e identifica a cada registro.

Page 51: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

No puede ser nula.

Para que la máquina gnera automàticamnte el còdigo de un registro se deberà cambiar la opcion a SI en la propiedad ESPECIFICACIÖN DE IDENTIDAD.

Page 52: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Una tabla se la identifica por su nombre

En la tabla se almacena registros.

Page 53: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

En caso de que aparezca el mensaje que no se puede realizar cambios o “no se permite guardar los cambios. Los cambios que ha realizado requieren que se quiten y vuelvan a crear las siguientes tablas”.

Page 54: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Para modificar el diseño de una base de datos (tablas, consultas, relaciones), debe estar desabilitada la opción“Impedir guardar cambios que requieran volver a crear tablas”.

Para ello Ingrese a herramientas, seleccione opciones, diseñad ores y diseñadores de base de datos y tablas.

Conectividad con base de datos

Se establecerá la comunicación entre Microsoft Visual C# con SQL server.

Page 55: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

CÓDIGO PARA CONECTAR LA BASE DE DATOS

// librería para la comunicación con el SQL server. using System.Data.SqlClient; //variables para la fecha y tiempo como globales string m = DateTime.Now.ToShortDateString(); string t = DateTime.Now.ToShortTimeString(); // variables para los leds y se coja valores binarios int l1,l2; // Una variable de tipo sqlconection de nombre conexión como global. SqlConnection conexion = newSqlConnection();

Cuando se realiza la conexión en base a la programación en visual C# se especifica el nombre del servidor “SANDY” también el nombre con el que se creó la base de datos, para el ejemplo llamada “BD_LEDS ”.

privatevoid conexionBD() { //se indica la cadena de conexion

conexion.ConnectionString = @"Data Source=SANDY;Initial Catalog=BD_LEDS;Integrated Security=True";

// abre la conexion

conexion.Open(); }

Page 56: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Para guardar el registro cuando se enciende el prim er LED color azul.

privatevoid btnencendidoAzul_Click_1(object sender, EventArgs e) { btnapagadoAzul.Enabled = true; btnencendidoAzul.Enabled = false; pbxledencidido.Visible = true; pbxledapagado.Visible = false; serialPort1.Write("1"); l1 = 1; conexionBD(); try { SqlCommand dataCommand = conexion.CreateCommand(); dataCommand.CommandText = "INSERT INTO REGISTRO (fecha_reg,led1_reg,led2_reg) VALUES (@f_reg,@l1_reg,@l2_reg)"; dataCommand.Parameters.AddWithValue("@f_reg", m + " " + t); dataCommand.Parameters.AddWithValue("@l1_reg", l1); dataCommand.Parameters.AddWithValue("@l2_reg", l2); dataCommand.ExecuteNonQuery(); conexion.Close(); MessageBox.Show("El Registro ha sido almacenado", "Listo", MessageBoxButtons.OK); } catch { MessageBox.Show("El Registro NO ha sido almacenado", "Listo", MessageBoxButtons.OK); } }

CODIFICACIÓN PARA EL REGISTRO Y LA CONSULTA EN EL C OMBOBOX

La consulta en los leds que se prendieron en genera l y el registro de los leds azules encendidos.

privatevoid cbxestado_SelectedIndexChanged_1(object sender, EventArgs e) { dataGridView1.ClearSelection();

Page 57: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

//se abre la conexion conexionBD(); if (cbxestado.SelectedIndex == 0) { DataSet ds = newDataSet(); //endicamos la consulta en SQL SqlDataAdapter da = newSqlDataAdapter("SELECT fecha_reg, led1_reg, led2_reg FROM dbo.REGISTRO", conexion); //se indica el nombre de la tabla da.Fill(ds, "REGISTRO"); dataGridView1.DataSource = ds.Tables["REGISTRO"]; conexion.Close(); } else { //Averiguar cuando los led azul estaba encendido. if (cbxestado.SelectedIndex == 3) { DataSet ds = newDataSet(); //endicamos la consulta en SQL SqlDataAdapter da = newSqlDataAdapter("SELECT fecha_reg, led1_reg FROM dbo.REGISTRO WHERE (led1_reg = 1) ", conexion); //se indica el nombre de la tabla da.Fill(ds, "REGISTRO"); dataGridView1.DataSource = ds.Tables["REGISTRO"]; conexion.Close();

} }}

Comprobación

Page 58: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Se generó 12 registros

Page 59: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que
Page 60: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

UNIDAD 4. Comunicación serial

Introducción a la comunicación serial-Puertos

Para manejar el puerto serie en C# es una tarea relativamente sencilla, esto permitirá conectarnos a infinidad de dispositivos electrónicos que utilizan este medio para comunicarse con el ordenador. La forma más habitual de conectar nuestro programa con cualquier dispositivo electrónico (Arduino,…, etc.) suele ser mediante el puerto serie, ya sea por el tradicional RS232 o un puerto USB que funciona como un puerto serie. Para poder conectar nuestros programas hechos en C# con estos dispositivos, este nos facilita un control para poder realizar este tipo de comunicaciones. Este control es el “SerialPort”. Para poder utilizarlo tenemos dos maneras,

1º Arrastrándolo desde la barra de controles hasta nuestro programa o,

2°-La otra forma de crearlo es desde nuestro propio código C#. Como la primera es obvio lo que hay que hacer, paso a explicar la segunda forma.

Componente serialPort

Puerto serial, permite recibir y mandar datos del programa a otras herramientas.

Propiedades:

Name: Permite colocar un nombre al puerto serial.

Page 61: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Métodos

Aplicación de puerto serial

Controles

CONTROLES PROPIEDADES Form1 Name: Form1 Tabcontrol1 Name:TabControl1 Pestaña1 Text: CONTROL comboBox1 Name:comboBox1 Label1 Name: lblescoja Label 2 Name: lblpuerto Button1 Name:btninicio Button2 Name: btnencendidoAzul Button3 Name:btnapagadoAzul Button4 Name: btnencendidoRojo Button5 Name: btnapagadoRojo PictureBox1 Name: pbxledencidido PictureBox1 Name:pbxledapagado PictureBox1 Name: pbxledRencendido PictureBox1 Name: pbxledRapagado Serialport1

Visualización de la interfaz

Page 62: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Codificación de arduino

const int pinLedazul = 3; const int pinLedrojo = 9; void setup() { inicializa el pin del led como de salida pinMode(pinLedazul, OUTPUT); pinMode(pinLedrojo, OUTPUT); Serial.begin(9600); } void loop() { if( Serial.available()) { char ps=Serial.read(); if(ps=='1') { digitalWrite(pinLedazul,HIGH); } else if(ps=='0') { digitalWrite(pinLedazul,LOW); } if(ps=='3') { digitalWrite(pinLedrojo,HIGH); } else if(ps=='2') { digitalWrite(pinLedrojo,LOW); } } } Codificación de C#

// librerias que son necesarias para el puerto serial using System.IO; using System.IO.Ports; namespace Aplicacion_de_Puerto_Serial { publicpartialclassForm1 :Form { public Form1() { InitializeComponent();

Page 63: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Control.CheckForIllegalCrossThreadCalls = false; foreach (string s inSerialPort.GetPortNames()) { comboBox1.Items.Add(s); } } privatevoid Form1_Load(object sender, EventArgs e) { btninicio.Enabled = false; } privatevoid btninicio_Click(object sender, EventArgs e) { pbxledapagado.Visible = true; pbxledRapagado.Visible = true; btnencendidoAzul.Visible = true; btnencendidoRojo.Visible = true; btnapagadoRojo.Visible = true; btnapagadoAzul.Visible = true; } privatevoid comboBox1_SelectedIndexChanged(object sender, EventArgs e) { serialPort1.PortName = comboBox1.Text; try { serialPort1.Open(); } catch { MessageBox.Show("Puerto no válido"); return; } comboBox1.Enabled = false; btninicio.Enabled = true; } privatevoid btnencendidoAzul_Click(object sender, EventArgs e) { btnapagadoAzul.Enabled = true; btnencendidoAzul.Enabled = false; pbxledencidido.Visible = true; pbxledapagado.Visible = false; serialPort1.Write("1"); } privatevoid btnapagadoAzul_Click(object sender, EventArgs e)

Page 64: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

{ btnencendidoAzul.Enabled = true; btnapagadoAzul.Enabled = false; pbxledapagado.Visible = true; pbxledencidido.Visible = false; serialPort1.Write("0"); } privatevoid btnencendidoRojo_Click(object sender, EventArgs e) { btnapagadoRojo.Enabled = true; btnencendidoRojo.Enabled = false; pbxledRencendido.Visible = true; pbxledRapagado.Visible = false; serialPort1.Write("3"); } privatevoid btnapagadoRojo_Click(object sender, EventArgs e) { btnencendidoRojo.Enabled = true; btnapagadoRojo.Enabled = false; pbxledRapagado.Visible = true; pbxledRencendido.Visible = false; serialPort1.Write("2"); } } }

Page 65: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

ANEXO

Anexo. ARDUINO Arduino

Introducción:

Origen.-

Arduino nació en el año 2005 en el instituto de Diseño Interactivo de Ivrea (Italia). Centro académico donde los estudiantes se dedicaban a experimentar con la interacción entre humanos y diferentes dispositivos para conseguir generar espacios únicos, especialmente artísticos. Arduino apareció por la necesidad de contar con un dispositivo para utilizar en las aulas que fuera de bajo costo, que funcionase bajo cualquier sistema operativo y que contase con documentación adaptada a gente que quisiera empezar de cero.

El nombre del proyecto viene del nombre del Bar di Re Arduino (Bar del Rey Arduino) donde MassimoBanzi pasaba algunas horas. En su creación, contribuyó el estudiante colombiano Hernando Barragán, quien desarrolló la tarjeta electrónica Wiring, el lenguaje de programación y la plataforma de desarrollo. Una vez concluida dicha plataforma, los investigadores trabajaron para hacerlo más ligero, más económico y disponible para la comunidad de código abierto (hardware y código abierto).

El instituto finalmente cerró sus puertas, así que los investigadores, entre ellos el español David Cuartielles, promovieron la idea.Banzi afirmaría años más tarde, que el proyecto nunca surgió como una idea de negocio, sino como una necesidad de subsistir ante el inminente cierre del Instituto de diseño Interactivo IVREA. Es

Page 66: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

decir, que al crear un producto de hardware abierto, éste no podría ser embargado.

Posteriormente, Google colaboró en el desarrollo del Kit Android ADK (AccesoryDevelopment Kit), una placa Arduino capaz de comunicarse directamente con teléfonos móviles inteligentes bajo el sistema operativo Android para que el teléfono controle luces, motores y sensores conectados de Arduino.

Para la producción en serie de la primera versión se tomó en cuenta que el costo no fuera mayor de 30 euros, que fuera ensamblado en una placa de color azul, debía ser Plug and Play y que trabajara con todas las plataformas informáticas tales como MacOSX, Windows y GNU/Linux. Las primeras 300 unidades se las dieron a los alumnos del Instituto IVRAE, con el fin de que las probaran y empezaran a diseñar sus primeros prototipos.

El programa de arduino se lo puede descargar en el siguiente link: http://arduino.cc/en/pmwiki.php?n=main/software

Tipos de arduinos.-

• Arduino Uno • Arduino Leonardo • ArduinoDue • ArduinoYún • Arduino Micro • ArduinoEsplora • Arduino Mega ADK • Arduino Ethernet • Arduino Mega 2560 • Arduino Robot • Arduino Mini • Arduino Nano • LilyPadArduino Simple • LilyPadArduinoSimpleSnap • LilyPadArduino • LilyPadArduino USB • Arduino Pro Mini • Arduino Fio • Arduino Pro

Estructura del arduino

Page 67: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Cuerpo de un programa arduino

Arduino se programa en el lenguaje de alto nivel C/C++ y generalmente tiene los siguientes componentes para elaborar el algoritmo:

• Estructuras • Variables • Operadores matemáticos, lógicos y booleanos • Estructura de control (Codificación y ciclos) • Funciones

Sintaxis básica

Delimitadores: ; , {}

Comentarios: //, /* */

Cabeceras: #define, #include

Operadores aritméticos: +, -, *, /, %

Asignación: =

Operadores de comparación: ==, !=, <, >, <=, >=

Operadores Booleanos:&&, ||, !

Operadores de acceso a punteros: *, &

Operadores de bits:&, |, ^, ~, <<, >>

Operadores compuestos:

Page 68: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Incremento y decremento de variables: ++, --

Asignación y operación: +=, -=, *=, /=, &=, |=

Estructuras de control

Condicionales: if, if...else, switch case

Bucles: for, while, do... while

Bifurcaciones y saltos: break, continue, return, goto

Contantes

• HIGH | LOW • INPUT | OUTPUT • True | false

Tipos de datos

• void • boolean • char • byte • int • word

• long • float • doublé • string- arreglo char • string- objeto • array

Utilidades

• sizeof()

Conversión

• char() • byte() • int()

• Word() • Long() • float()

Tiempo

• millis() • micros() • delay() • delayMicroseconds()

Matemáticas

• min() • max()

Page 69: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

• abs() • contrain() • map()

• pow() • sqrt()

Comunicación

Serial

• begin() • end() • available() • read() • peek() • flush() • print() • printin() • write()

Page 70: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Funciones

La función es un conjunto de líneas de código que realizan una tarea específica y puede retornar un valor. Las funciones pueden tomar parámetros que modifiquen su funcionamiento. Las funciones son utilizadas para descomponer grandes problemas en tareas simples y para implementar operaciones que son comúnmente utilizadas durante un programa y de esta manera reducir la cantidad de código.

Funciones digitales. - Orienta a revisar el estado y la configuración de las entradas y salidas digitales

pinMode() Permite configurar un pin pinMode(pin,modo)

pinMode(13,OUTPUT) pinMode(a,INPUT);

digitalRead() Leer un pin digital (0 ó 1) digitalRead(pin)

int a=digitalRead(13);

digitalWrite() Escribir un pin digital con 1 ó 0 digitalWrite(pin,estado)

digitalWrite(13,HIGH); digitalWrite(13,LOW);

Funciones análogas

analogRead() Leer un valor análogo 0 a 1023 analogRead(pin)

int a = analogRead(AO);

analogWrite() Escribir un valor análogo 0 a 255 analogWrite(pin,valor de PWM)

analogWrite(9,134);

Referencia

http://www.tiendaderobotica.com/download/Libro_kit_Basico.pdf

http://4.bp.blogspot.com/-cpeRI0QR6S8/UAR4wmw8mxI/AAAAAAAAACc/xlitT-3X8LQ/s1600/ArduinoUnoR3Pines.jpg

http://arduino.cc/en/Guide/HomePage

https://msdn.microsoft.com/es-es/library/ms228277(v=vs.90).aspx

Page 71: UNIDAD 1 PROGRAMACIÓN VISUAL · derecha del formulario que permite minimizar el mismo, es decir se ubicará en la barra de tareas del escritorio. Text: Permite colocar el texto que

Base de datos

http://docupo.pbworks.com/w/page/18009088/ElementosdeunaBasedeDatos

https://technet.microsoft.com/es-es/library/ms166016(v=sql.110).aspx