Está en la página 1de 36

Contenidos

Introduccin a la Plataforma .NET o Componentes de la Plataforma .NET: NET Framework, Building Block Services, Visual Studio .NET, .NET Enterprise Servers o NET Framework: Beneficios. Lenguajes. Componentes: CLR, Class Library, ADO.NET, ASP .NET, Web Forms, Windows Forms. o Namespaces o Entorno integrado de Visual Studio .NET Diseo de Aplicaciones Windows en Visual Basic .NET o Windows Forms. Propiedades y Eventos. o Controles Bsicos: TextBox, Label, Button. Propiedades y Eventos o Eventos y Delegados. La palabra clave Handles Variables y Tipos de Datos o Tipos de Datos. Conversin Explcita e Implcita de Tipos. o Funciones de Conversin. o Variables. mbito: Local, Privado y Pblico o Estructuras. Creacin y Uso. Declaracin. Enumeraciones.

VISUAL BASIC NET 2012

Conceptos Generales
Comprendiendo la tecnologa .NET
Si bien solemos tener la sensacin de que los paradigmas de programacin de tecnologas Microsoft se encuentran en constante cambio, la realidad nos muestra que los grandes cambios vienen ocurriendo aproximadamente cada 10 aos. Uno de ellos se dio a finales de la dcada de 1990 y principios de la dcada del 2000, con el desarrollo y la introduccin al mercado de la plataforma Microsoft .NET. Hubo varios factores que motivaron al desarrollo de esta plataforma, entre los cuales podemos mencionar: La amplia disponibilidad de conexiones a Internet de alta velocidad, e incluso inalmbricas. La proliferacin de nuevos tipos de dispositivos de hardware que son usados en la vida diaria (telfonos inteligentes, Pocket PCs, HandHelds, Media Centers, etc.) . El creciente poder de cmputo de las computadoras personales y servidores basados en arquitecturas x86. El surgimiento de estndares de Internet para permitir la comunicacin e integracin entre diversas plataformas de software.

Qu es .NET?
Plataforma de Desarrollo compuesta de

Entorno de Ejecucin (Runtime) Bibliotecas de Funcionalidad (Class Library) Lenguajes de Programacin Compiladores Herramientas de Desarrollo (IDE & Tools) Guas de Arquitectura

La evolucin de la plataforma COM

Antes de decir qu es .NET, es conveniente aclarar qu NO es .NET: .NET no es un sistema operativo, como si lo es Microsoft Windows en sus distintas versiones. .NET no es un Lenguaje de Programacin: si bien la plataforma Microsoft .NET incluye lenguajes de programacin de aplicaciones, su concepto es ms amplio y va ms all de stos. .NET no es un Entorno de Desarrollo: si bien la plataforma Microsoft .NET incluye entornos de desarrollo integrados (IDEs), su concepto es ms amplio y va ms all de stos. .NET no es un servidor de aplicaciones (Application Server) .NET no es un producto empaquetado que se pueda comprar como tal, sino que es una plataforma que engloba distintas aplicaciones, servicios y conceptos y que en conjunto permiten el desarrollo y la ejecucin de aplicaciones.

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012

Microsoft .NET es una plataforma de desarrollo y ejecucin de aplicaciones. Esto quiere decir que no slo nos brinda todas las herramientas y servicios que se necesitan para desarrollar modernas aplicaciones empresariales y de misin crtica, sino que tambin nos provee de mecanismos robustos, seguros y eficientes para asegurar que la ejecucin de las mismas sea ptima. Los componentes principales de la plataforma .NET son: Un entorno de ejecucin de aplicaciones, tambin llamado Runtime, que es un componente de software cuya funcin es la de ejecutar las aplicaciones .NET e interactuar con el sistema operativo ofreciendo sus servicios y recursos. Un conjunto de bibliotecas de funcionalidades y controles reutilizables, con una enorme cantidad de componentes ya programados listos para ser consumidos por otras aplicaciones. Un conjunto de lenguajes de programacin de alto nivel, junto con sus compiladores y linkers, que permitirn el desarrollo de aplicaciones sobre la plataforma .NET. Un conjunto de utilitarios y herramientas de desarrollo para simplificar las tareas ms comunes del proceso de desarrollo de aplicaciones. Documentacin y guas de arquitectura, que describen las mejores prcticas de diseo, organizacin, desarrollo, prueba e instalacin de aplicaciones .NET

Las tecnologas intrnsecas que integran la plataforma .NET incluyen: NET Framework: Se basa en un nuevo entorno de ejecucin de lenguaje comn (CLR - Common Language Runtime). Este motor de ejecucin proporciona un conjunto de servicios comunes para los proyectos generados en Visual Studio .NET, con independencia del lenguaje. Estos servicios proporcionan bloques de desarrollo fundamentales para aplicaciones de cualquier tipo, para todas las capas y niveles de la arquitectura de aplicaciones. Servicios .NET Building Blocks: son servicios programables distribuidos que estn disponibles tanto en modo conectado como desconectado. Un servicio puede invocarse desde un ordenador aislado no conectado a Internet, ofrecido por un servidor local dentro de una empresa, o puede ser accedido a travs de Internet. Los servicios .NET Building Blocks pueden utilizarse desde cualquier plataforma que soporte el protocolo SOAP. Los servicios pueden incluir identidad, notificacin y mensajera, personalizacin, almacenamiento esquematizado, calendario, directorio, bsqueda y distribucin de software. Visual Studio .NET: ofrece un entorno de desarrollo de alto nivel para desarrollar aplicaciones que se ejecutan sobre el .NET Framework. Proporciona las tecnologas fundamentales para simplificar la creacin, implantacin y evolucin constante de aplicaciones y Servicios Web seguros, escalables y de alta disponibilidad. Tambin permite crear una nueva generacin de aplicaciones basadas en Windows con numerosas y nuevas caractersticas disponibles gracias al .NET Framework. Servidores .NET Enterprise Servers: proporcionan escalabilidad, fiabilidad, gestin e integracin dentro de la empresa y entre organizaciones, tales como Microsoft SQL Server.

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012

NET Framework: Arquitectura, versiones


NET Framework 4 es un componente integral de Windows que admite la compilacin y la ejecucin de la siguiente generacin de aplicaciones y servicios Web.Los componentes clave de .NET Framework son Common Language Runtime (CLR) y la Biblioteca de Clases Base. NET Framework, que incluye ADO.NET, ASP.NET, formularios Windows Forms y Windows Presentation Foundation (WPF). .NET Framework proporciona un entorno de ejecucin administrado, un desarrollo e implementacin simplificados y la integracin con una gran variedad de lenguajes de programacin. Es importante aclarar que .NET est pensado para que se desarrollen las aplicaciones una nica vez y estas puedan ejecutarse sobre diferentes sistemas operativos; para lograr este acometido las aplicaciones corren no sobre una plataforma de hardware como tal sino sobre una capa intermedia de software; esta capa es el Framework de .NET (al estilo de la mquina virtual de Java).

Arquitectura
Al entorno de ejecucin de .NET se le conoce como Common Languaje Runtime y se encarga de gestionar la ejecucin de las aplicaciones construidas sobre .NET as como de su interaccin con el sistema operativo. Este comportamiento se describe como un entorno de ejecucin de aplicaciones administrado.

La Biblioteca de Clases Base, como decamos, est compuesta por un conjunto de clases reutilizables (a travs de tcnicas propias de la Programacin Orientada a Objetos) que dan solucin a las tareas ms comunes del desarrollo de aplicaciones. Dichas clases estn agrupadas en estructuras jerrquicas de acuerdo al tipo de labores que realizan; por ejemplo, tenemos las clases que sirven para desarrollar ambientes de escritorio para Windows, aplicaciones para la web, programacin para acceso a bases de datos, etc. Adicional a lo ya descrito, el Framework de .NET contiene lo siguiente lo que se conoce como Common Type System (CTS Sistema Comn de Tipos). Un tipo (Type), en .NET, es una representacin de datos a ser almacenados en la memoria del computador durante la ejecucin de una aplicacin. El Framework de .NET define los tipos bsicos (por ejemplo un entero de 32 bits con signo o una cadena de caracteres) de los cuales se derivarn tipos ms complejos creados por los desarrolladores. El CTS sirve para garantizar que todos los tipos de datos definidos en el Framework de .NET

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012


sean interoperables, es decir, se puedan usar de la misma forma en todos los lenguajes soportados por .NET.

Versiones
Cada versin de .NET Framework contiene Common Language Runtime (CLR) como componente bsico e incluye componentes adicionales, como las bibliotecas de clases base y otras bibliotecas administradas.En este tema se describen los componentes clave de las versiones de .NET Framework, se proporciona informacin sobre las versiones del CLR subyacente y los entornos de desarrollo asociados, y se identifican las versiones que se instalan en Windows. En la siguiente ilustracin se resume el historial de versiones y las versiones que se instalan en Windows.

Cada versin de .NET Framework contiene caractersticas de versiones anteriores e incorpora nuevas caractersticas. Aunque el CLR es el componente bsico de .NET Framework, CLR se identifica mediante su propio nmero de versin, independientemente del nmero de versin de .NET Framework.Algunas versiones de .NET Framework incluyen una nueva versin de CLR, aunque otras utilizan una versin anterior. Por ejemplo, .NET Framework versin 4 contiene la versin 4 de CLR, mientras que .NET Framework 3.5 incluye CLR 2.0.(No existe la versin 3 de CLR). La versin de CLR en la que se ejecuta una aplicacin se puede determinar recuperando el valor de la propiedad Environment.Version. No tiene que instalar versiones anteriores de .NET Framework o CLR antes de instalar la ltima versin; cada versin proporciona los componentes necesarios. La siguiente tabla proporciona una breve revisin de las versiones de .NET Framework y la versin de CLR asociada. En la tabla se muestra tambin la versin de Visual Studio que proporcionaba el entorno de desarrollo cuando se present la versin de .NET Framework. Sin embargo, con la caracterstica de compatibilidad con mltiples versiones (multi-targeting) de Visual Studio, el desarrollador no est limitado a esa nica versin de .NET Framework.

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012


La siguiente tabla proporciona una breve revisin de las versiones de .NET Framework y la versin de CLR asociada.En la tabla se muestra tambin la versin de Visual Studio que proporcionaba el entorno de desarrollo cuando se present la versin de .NET Framework.Sin embargo, con la caracterstica de compatibilidad con mltiples versiones (multi-targeting) de Visual Studio, el desarrollador no est limitado a esa nica versin de .NET Framework.
Versin de .NET Framework 1.0 Versin de Versin de CLR Visual Studio Visual Studio .NET

Descripcin

1.0

Contena la primera versin de CLR y la primera versin de las bibliotecas de clases base. Inclua actualizaciones de ASP.NET y ADO.NET.Esta versin se actualiz dos veces posteriormente, con Service Pack 1 y (SP1) SP2.Esta versin incorporaba tambin la ejecucin en paralelo, lo que permite que las aplicaciones de un solo equipo ejecuten varias versiones de CLR. Se incorpor una nueva versin de CLR con ampliaciones de las bibliotecas de clases base, que incluan genricos, colecciones de genricos y ampliaciones significativas de ASP.NET.Esta versin se actualiz posteriormente con SP1 y SP2. Esta versin es esencialmente .NET Framework 2.0 con la incorporacin de Windows Presentation Foundation (WPF), Windows Communications Foundation (WCF), Windows Workflow Foundation (WF) y CardSpace.Posteriormente se actualiz con SP1 y SP2. Se agregaron nuevas caractersticas, como los sitios web habilitados para AJAX y LINQ.La actualizacin SP1 incorporaba .NET Framework Client Profile, datos dinmicos y un pequeo conjunto de mejoras adicionales. Incluye una nueva versin de CLR, bibliotecas de clases base expandidas y nuevas caractersticas, como Managed Extensibility Framework (MEF), Dynamic Language Runtime (DLR) y contratos de cdigo.

1.1

1.1

Visual Studio .NET 2003

2.0

2.0

Visual Studio 2005

3.0

2.0

Visual Studio 2005

3.5

2.0

Visual Studio 2008

Visual Studio 2010

Es importante resaltar que existe una edicin reducida del Framework de .NET orientada a dispositivos mviles. Adems de esto existe una edicin conocida como Redistribuible del Framework de .NET que est destinada a los ambientes productivos de las aplicaciones, es decir a clientes donde se ejecutan mas no se desarrollan las aplicaciones. La versin ms reciente del Framework de .Net (al momento de escribir esta entrada) es la 4.0. En la siguiente imagen podemos apreciar su composicin (de algunas de las partes all descritas hablaremos ms adelante, otras estn por fuera del alcance de este curso):

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012

Mdulos y ensamblados
En Microsoft .NET framework, un ensamblado es principalmente una biblioteca de cdigo compilado para ser utilizado en instalaciones, versionamiento y seguridad. Existen 2 tipos: Ensamblados de procesos (EXE) y bibliotecas de ensamblados (DLL). Un ensamblado de proceso representa un ejecutable que posiblemente usar clases definidas en ensamblados de bibliotecas, o ejecutar solo cdigo contenido en si mismo. Los ensamblados de .NET contienen cdigo en lenguaje CIL, el cual es usualmente generado desde los lenguajes .NET y luego compilados en un motor de ejecucin CLR Compilacin Justo en Ejecucin, en ingles Just - In Time Compiler. No se puede catalogar a .NET como un lenguaje de programacin interpretado, algunos autores tienden a catalogarlo como un lenguaje compilado ya que el CIL es leido y compilado por el CLR, con las ventajas del just - in time Un ensamblado puede consistir en uno o ms archivos. Los archivos de cdigo son llamados mdulos. Un ensamblado puede contener ms de un modulo de cdigo y es posible utilizar diferentes lenguajes en los diferentes mdulos para crear el ensamblado de .NET. Visual Studio sin embargo no soporta utilizar diferentes lenguajes en un ensamblado, la compilacin de ensamblados de mltiples lenguajes es necesaria realizarla desde la consola de comandos. Por buenas prcticas de desarrollo se acostumbra ubicar una nica clase en cada archivo del ensamblado, pero cabe recordar que un mdulo; un archivo; puede contener varias clases dentro de l pero no es recomendable. Los ensamblados pueden tener diferentes decoradores que definen el entorno de ejecucin de los mismos COM+, DCOM, Remouting, etc.

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012

Namespaces (Espacios de nombres)


.NET Framework incluye un gran conjunto de ensamblados que forman las bibliotecas de clases, que conjuntamente contienen cientos de tipos. Estos ensamblados proporcionan acceso a funcionalidades del sistema en nuestro proceso de desarrollo.

Objetivo de los espacios de nombres


Debido a que la biblioteca de clases del .NET Framework incluye definiciones para numerosos tipos, la biblioteca se organiza en un espacio de nombres de estructura jerrquica. Los espacios de nombres utilizan un esquema nombres con una sintaxis basada en un punto para agrupar lgicamente clases relacionadas de modo que puedan buscarse y reverenciarse fcilmente. Por ejemplo, el espacio de nombres System.Data contiene clases que constituyen la arquitectura de ADO.NET. El espacio de nombres System.Xml es el espacio de nombres global para todas las clases XML que proporcionan soporte basado en estndares para procesar XML.

Detalles de algunos espacios de nombres


El espacio de nombres System tambin contiene tipos para la gestin de excepciones, recolector de basura, E/S de consola, varios tipos de herramientas, tipos de datos de formato, generadores de nmeros aleatorios y funciones matemticas. El espacio de nombre System.Collections proporciona listas clasificadas, tablas hash y otras formas de agrupar datos. El espacio de nombres System.IO proporciona E/S de archivos, flujos, etc. El espacio de nombres System.NET proporciona soporte de Transmission Control Protocol/Internet Protocol (TCP/IP) y sockets. Si desea ms informacin sobre los espacios de nombres, realice una bsqueda de espacio de nombres en la documentacin del .NET Framework SDK. El espacio de nombres System.Data est compuesto por clases que constituyen el modelo de objetos ADO.NET. A alto nivel, el modelo de objetos ADO.NET se divide en dos capas: la capa conectada y la capa desconectada. El espacio de nombres System.Data incluye la clase DataSet, que representa mltiples tablas y sus relaciones. Estos conjuntos de datos son estructuras de datos completamente autocontenidas que pueden poblarse desde diversas fuentes de datos. Una posible fuente de datos podra ser XML, otra podra ser OLE DB, y una tercera fuente de datos podra ser el adaptador directo para SQL Server. El espacio de nombres System.Xml proporciona soporte para XML. Incluye un parseador y un escritor XML, siendo compatibles con el W3C. Las transformaciones las proporciona el espacio de nombres System.Xml.Xsl y la implementacin de XPath que permite navegacin de grafos de datos en XML. El espacio de nombres System.XML.Serialization proporciona toda la infraestructura bsica para los Servicios Web, incluyendo caractersticas como el movimiento atrs y adelante entre objetos y una representacin XML. El espacio de nombres System.Web.Services gestiona los requerimientos de los Servicios Web como los protocolos de transporte y el descubrimiento de servicios. El espacio de nombres System.Web.UI proporciona dos clases de controles: los controles HTML y los controles Web. Los controles HTMLControl proporcionan un mapeado directo de las etiquetas HTML, como <INPUT>. Existen tambin otros controles WebControl ms ricos que permiten estructurar controles mediante plantillas (por ejemplo, un control de rejilla). Espacio de nombres System.Windows.Forms Podemos utilizar las clases del espacio de nombres System.Windows.Forms para crear el IU cliente. Esta clase nos permite implementar el IU de Windows estndar en nuestras aplicaciones .NET. Muchas funciones a las que anteriormente slo podan accederse mediante llamadas a la API (Application Programming Interface) estn ahora disponibles como parte de los propios formularios, lo cual hace el desarrollo mucho ms fcil y potente.

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012

Espacio de nombres System.Drawing El espacio de nombres System.Drawing proporciona acceso a la funcionalidad de grficos bsica de GDI+. Los espacios de nombres System.Drawing.Drawing2D, System.Drawing.Imaging y System.Drawing.Text ofrecen funcionalidades ms avanzadas.

Tipos de Aplicaciones Windows: Windows Form, WPF, Servicios Windows y Win32.


Los tipos de aplicaciones desarrolladas que pueden ser ejecutadas en sistemas operativos Windows, son: Aplicaciones Windows Forms. Aplicaciones Windows Presentation Foundation (WPF). Aplicaciones Windows Service (Servicios Windows). Aplicaciones Win32.

Aplicaciones Windows Forms.


Utiliza los Formularios como bloques de construccin para crear una interfaz de usuario. Permite el uso sencillo de elementos de Windows estndar: o Mens o Botones o Cuadros de texto (TextBoxes) y muchas otras caractersticas que vea a diario en aplicaciones como Microsoft Word, Microsoft Excel, Microsoft PowerPoint y otros programas basados en Windows.

Aplicaciones Windows Presentation Foundation (WPF).


Permite la creacin de interfaces de usuario Enriquecidas de prxima generacin. o Video o Audio o Imgenes en 2-D o Imgenes en 3-D Utiliza el lenguaje de marcado de aplicaciones extensible (XAML) para implementar la interfaz de usuario. Nota: Microsoft Visual Studio cuenta con el Diseador de WPF para asistirlo con esto.

Aplicaciones Windows Service (Servicios Windows).


Se ejecuta como un servicio y no muestra ninguna interfaz de usuario. Se puede ejecutar por periodos largos de tiempo. A menudo inicia cuando se prende la computadora. til para aplicaciones que se ejecutan en segundo plano o de forma invisible. A menudo utilizada por programas que monitorean la actividad o el hardware.

VICTOR M. SANCHEZ FALCON

VISUAL BASIC NET 2012

Aplicaciones Win32.
Tambin conocido como API de Windows. Tpicamente escrito en C o C++, estas aplicaciones utilizan cdigo nativo, el cual es ms rpido que el Common Language Runtime (CLR) utilizado por aplicaciones .NET. Por esta razn, la API de Windows a menudo se utiliza en el desarrollo de juegos u otras aplicaciones de alto desempeo Da a los desarrolladores la capacidad para utilizar elementos de interfaz de usuario grafica (GUI) de Windows, tal como ventanas, botones y mens. Tambin se puede utilizar para aplicaciones de servicios de Windows en C/C++. La API de Windows es a menudo utilizada por desarrolladores quienes no utilizan el Microsoft .NET Framework.

Conociendo la IDE de Visual Studio.NET 2010


Descripcin de la IDE de Visual Studio 2010
1

Al crear o abrir un nuevo proyecto en Visual Studio podemos observar las siguientes partes: 1. 2. 3. 4. 5. Barra Estndar Cuadro de Herramientas Formulario Explorador de Soluciones Ventana de Propiedades

VICTOR M. SANCHEZ FALCON

10

VISUAL BASIC NET 2012

Cuadro de herramientas
El cuadro de herramientas contiene todos los elementos que podremos incorporar a nuestros proyectos. Como son muchos est dividido en fichas similares a otros programas de Office:

Por defecto tendremos los controles ms habituales en la seccin de "controles comunes". Adems de estas fichas tenemos otras disponibles pero que no estn visibles. Para que sean visibles pulsaremos con el botn derecho y seleccionamos "Mostrar todas":

Esta pantalla es muy flexible y permite mover de sitio las fichas simplemente pulsando en el ttulo y arrastrndolo a la posicin que queramos. Por si fuera poco podemos crear nuevas fichas. Slo tenemos que seleccionar la opcin "Agregar ficha" que aparece al pulsar con el botn derecho encima de una ficha. Luego le asignamos un nombre y despus seleccionamos:

VICTOR M. SANCHEZ FALCON

11

VISUAL BASIC NET 2012


"Elegir elementos", que tras unos segundos nos mostrar la siguiente pantalla que nos permitir aadir los elementos que queramos:

Explorador de soluciones
Corresponde al antiguo explorador de proyectos y contiene todos los ficheros de que consta nuestro proyecto. Veamos la pantalla del ejemplo anterior:

Porqu se llama Explorador de soluciones? Muy sencillo, porque ahora con .NET un programa puede estar compuesto de varios proyectos o programas que conforman la solucin. Por eso este explorador permite tener varios proyectos simultneos que van a conformar la solucin (incluso en distintos lenguajes, recuerda que el entorno ahora es el mismo). Vemos primero el nombre de la solucin y debajo un fichero que pone "My Project" que si le hacemos clic veremos que tiene:

VICTOR M. SANCHEZ FALCON

12

VISUAL BASIC NET 2012

Como ves, aparece "nombre del ensamblado" en lugar de aplicacin. Recuerda lo que vimos sobre .NET en el primer captulo donde lo que generamos se le llama ahora "ensamblados" aunque lgicamente se trata de una aplicacin, pero por seguir la nomenclatura de este entorno. Si vemos la carpeta donde guardamos un proyecto podemos ver estos iconos:

Como ves, hay uno que tiene de extensin ".sln" que es el que define la solucin, que en este caso se compone de un proyecto de una sola aplicacin de "Windows Forms", o de formularios. En ocasiones ser necesario crear una solucin con varios proyectos distintos dentro de ella, pero de momento, se compondrn como hemos hecho hasta ahora, de un solo proyecto. Volviendo a la ventana de propiedades de nuestro proyecto podemos ver desde el nombre de la aplicacin o ensamblado que va a generar hasta el icono que le pondr al programa cuando lo terminemos. Siguiendo con el explorador de soluciones vemos aparece dos iconos de "form1" y "form2" que son los dos formularios que he creado en este ejemplo. Si recuerdas, en la carpeta aparecen varios ficheros mas, pero en esta versin se ocultan para tener el rea ms limpia. Antes se mostraban todos e incluso el cdigo que vimos con la configuracin del formulario se inclua en el propio formulario. Ahora tiene un aspecto mucho ms sencilla mostrndonos solo lo ms importante. Aparece como ttulo el nombre genrico de "WindowsApplicationxx".

VICTOR M. SANCHEZ FALCON

13

VISUAL BASIC NET 2012

Ventana Propiedades
Esta ventana es junto con las dos anteriores las que ms vamos utilizar en el diseo ya que aqu es donde daremos nombre a los controles, modificaremos su aspecto y configuraremos su funcionamiento. Esta debe estar presente o muy cerca siempre.

Se divide en varias partes, en la parte superior tenemos el nombre del objeto o control: Textbox1 indicando a la derecha a que tipo o clase corresponde. Puedes ver que aparece otra vez el namespace "System.Windows.Forms". As que ya sabemos que los cuadros de texto como este dependen de este superobjeto "System.Windows.Forms" que es el que tiene todos los controles de Windows. A continuacin tiene una barra de herramientas que nos permite distribuir las propiedades (en ocasiones sern muchas) en una jerarqua, segn el tipo de propiedad que es o en orden alfabtico:

VICTOR M. SANCHEZ FALCON

14

VISUAL BASIC NET 2012


Dependiendo del tipo de datos que tengamos que meter en estas propiedades nos mostrar una entrada de datos distinta. Si es para el texto de un botn nos pedir sin ms el texto, si es para un color, nos mostrar una pantalla de seleccin de color, si es una opcin nos la mostrar para seleccionarla de un desplegable. Por ltimo comentar que en la parte donde tenemos el nombre del control en realidad es un cuadro desplegable que contiene todos los controles de nuestro formulario. En ocasiones el control que queremos modificar puede no estar visible, con esta opcin podemos buscarlo en la lista para cambiar alguna propiedad. De ah la importancia que tiene el poner buenos nombres a los controles, as los tendremos fcilmente localizables:

Ten cuidado cuando modifiques las propiedades, asegrate que ests editando el control adecuado. Comprubalo en el cuadro de texto que tenemos encima de las propieades y que es donde aparece el nombre.

Diseo de Aplicaciones Windows Form en V. Basic .NET 2010


Estructura de un proyecto en Visual Studio.
En Visual Basic .NET a diferencia de lo que ocurra en las versiones anteriores de Visual Basic, slo existe un tipo de fichero de cdigo, con la extensin .vb. En este tipo de fichero pueden coexistir distintos tipos de elementos, por ejemplo: un mdulo de clase, un formulario, un mdulo de cdigo, un control, etc.; mientras que en las versiones anteriores de Visual Basic, cada uno de estos elementos tenan su propio tipo de fichero con su respectiva extensin. Como cometamos al principio del curso, no es necesario ningn conocimiento de anteriores versiones de Visual Basic pero os ir contando los cambios ms importantes para aquellos que ya conocais versiones anteriores y as os podis ir adaptando a todos estos nuevos conceptos. En nuestra aplicacin anterior, un programa de Windows con un formulario, podamos ver los ficheros en los que se compone el proyecto en la parte derecha:

VICTOR M. SANCHEZ FALCON

15

VISUAL BASIC NET 2012

Como ves, hay uno con extensin ".vb" que es el que contiene la definicin y cdigo del formulario y otro fichero "My Project" con la definicin del proyecto completo. Para los antiguos programadores, esta tabla muestra la extensin que tienen los diferentes tipos de ficheros de VB.NET y su comparacin con los de VB.NET: Recurso Formulario (Form) Mdulo (Module) Mdulo Module) de clase (Class Visual Basic 6.0 .frm .bas .cls Visual Basic .NET .vb .vb .vb

Creacin de un Nuevo Proyecto


Al iniciar Visual Studio, se muestra una ventana como la siguiente:

VICTOR M. SANCHEZ FALCON

16

VISUAL BASIC NET 2012


En donde se encuentra una opcin Nuevo proyecto, o a travs del Men Archivo > Nuevo proyecto.

1
3 2

(1) Seleccionar la versin del NET Framework a utilizar, recordar que cada versin proporciona plantillas adicionales, luego elegir la plantilla Visual Basic > Windows (2), y usar Aplicacin de Windows Form Visual Basic (3) y establecer el nombre del proyecto (4). Por defecto, se guardar el proyecto en una ruta predeterminada. Si desea establecer desde un inicio el lugar en donde guardar su proyecto, ir al Men Herramientas > Opciones, y activar Guardar nuevos proyectos al crearlos.

VICTOR M. SANCHEZ FALCON

17

VISUAL BASIC NET 2012

Ahora puede decidir en donde guardar su proyecto (1), la opcin Crear directorio para la solucin (2) al estar activa, guardar los archivos en una carpeta con el mismo nombre de la solucin.

Windows Form
Es la G.U.I o Interfaz Grfica de Usuario, en donde se encuentran los controles con los que el usuario interacta.

Propiedades. Name: se puede anteceder el prefijo frm al nombre. AceptButton: Establece el nombre del botn que se activar cuando se pulse la tecla ENTER. BackColor: Establece el color de fondo. BackGround: Establece una imagen de fondo.

VICTOR M. SANCHEZ FALCON

18

VISUAL BASIC NET 2012

Al establecer una imagen de fondo, se abre una ventana para usar la imagen como Recurso Local, o para importarlo dentro de un Archivo de Recursos. Elija la segunda alternativa. (Ms adelante se detalla el uso).

BackGroundImageLayout: Establece la forma en que la imagen de fondo se debe mostrar.

TILE

CENTER

ZOOM

STRETCH
ControlBox: Determina si la ventana contendr un ICONO DE CONTROL.

VICTOR M. SANCHEZ FALCON

19

VISUAL BASIC NET 2012


CancelButton: Establece el nombre del botn que se activar cuando se pulse la tecla ESCAPE. Font: Si camba el formato del texto del formulario, los controles que inserte en el, heredarn la misma propiedad. FormBorderStyle: Establece el comportamiento del borde del formulario, en tiempo de ejecucin. Puede ser SIZABLE (redimensionable en tiempo de ejecucin), FIXED SINGLE (borde fijo), entre otros. Icon: Establece la imagen que tendr el ICONO DE CONTROL de la ventana. MaximizeBox: Establece si el botn MAXIMIZAR o RESTAURAR, estar habilitado. MinimizeBox: Establece si el botn MINIMIZAR, estar habilitado. StartPosition: Define la posicin del formulario al ser ejecutado. Puede estar CENTRADO EN LA PANTALLA (CenterScreen), o por defecto. WindowState: Define el estado del formulario al ser ejecutado. Puede estar en forma NORMAL, MAXIMIZADO o MINIMIZADO.

Eventos. Load: se realiza cuando el usuario carga el formulario. FormClosing: tiene lugar cuando el usuario cierra el formulario, antes de cerrarlo, y especifica el motivo del cierre.

Para escribir instrucciones de cdigo en los eventos, se tendr que mostrar el Editor de Cdigo pulsando la tecla F7 sobre el objeto, tambin haciendo clic derecho sobre el objeto y seleccionando la opcin Ver Cdigo, o tambin desde la ventana de Propiedades haciendo clic en el botn Eventos.

VICTOR M. SANCHEZ FALCON

20

VISUAL BASIC NET 2012

Ejercicio 1

Crear una solucin de nombre Semana01, en el Escritorio. Establecer las siguientes propiedades al formulario: Nombre: frmInicio Texto: CURSO DE T.P.O Estilo de Borde: Fijo Simple Deshabilitar los botones Minimizar y Maximizar. Centrar en pantalla al ejecutar. Ancho: 600, Alto: 400 Color de Fondo: Crema Imagen de Fondo centrada: C:\Windows\Web\Wallpaper\...

Compilacin y Depuracin de un proyecto.


El entorno de desarrollo integrado (IDE) de Visual Studio facilita la compilacin de un proyecto y la ejecucin de la aplicacin resultante. Puede utilizar el depurador integrado en el IDE para depurar su proyecto mientras lo ejecuta. Para compilar y ejecutar el proyecto actual, presione F5 mientras est en el entorno de desarrollo integrado (IDE) de Visual Studio. El IDE compila el proyecto y ejecuta la aplicacin dentro del depurador de Visual Studio. Para compilar y ejecutar el proyecto actual desde el Men Depurar del IDE de Visual Studio, elija Iniciar depuracin. El IDE compila el proyecto y ejecuta la aplicacin dentro del depurador de Visual Studio.

Ejercicio 2

Ejecute el proyecto anterior y observe las propiedades afectadas. Luego, termine la ejecucin. Abrir el editor de cdigo del formulario, y en el evento Load, escriba las siguientes instrucciones:

VICTOR M. SANCHEZ FALCON

21

VISUAL BASIC NET 2012


Comente cada una de las instrucciones: . . . . Escriba las instrucciones requeridas para mostrar un mensaje con el diseo mostrado, que se muestre al cerrar el formulario, y que pregunte al usuario si desea salir o no de la aplicacin.

Controles Bsicos Label (Etiqueta)


Propiedades. Name: se antecede el prefijo lbl al nombre. Debe ser establecido generalmente cuando el control intervenga en algn proceso. Autosize: el valor True redimensiona el largo del control al texto contenido. Font: Permite establecer el tipo de fuente (Name), tamao (Size), Negrita (Bold), Cursiva (Italic), Subrayado (Underline). Forecolor: Establece el color de la fuente. Text: Establece el texto mostrado por la etiqueta.

VICTOR M. SANCHEZ FALCON

22

VISUAL BASIC NET 2012

Textbox (Caja de Texto)


Propiedades. Name: por motivos de reconocimiento, se puede anteceder el prefijo txt al nombre. Backcolor: establece el color de fondo del control. Enabled: el valor FALSE evita que el usuario pueda interactuar con el control. MaxLength: establece el nmero mximo de caracteres permitidos. Multiline: el valor TRUE permite que el textbox soporte varias lneas de texto. PasswordChar: establece el carcter de password que ocultar el contenido de la caja de texto. Text: Establece el texto mostrado por la caja de texto.

Eventos. TextChanged: se realiza cuando cambia el contenido de la caja de texto, es decir, cuando el usuario escribe algo o borra en el. GotFocus: se realiza cuando el objeto gana el foco. LostFocus: se realiza cuando el objeto pierde el foco.

Ejercicio 3

Crear un formulario con la siguiente apariencia:

Label Label

TextBox (txtNombres) TextBox (txtAnno)

Label

Label (lblEdad)

VICTOR M. SANCHEZ FALCON

23

VISUAL BASIC NET 2012


En las siguientes instrucciones, el color de fondo de la caja de texto txtNombres cambia a Amarillo cuando el enfoque se halla sobre el, y de color blanco, cuando pierde el enfoque. Complete las mismas acciones sobre txtAnno.

Escribir las instrucciones que permitan mostrar la edad en lblEdad al momento de escribir un valor en el Ao de Nacimiento.

Escribir las instrucciones que permitan mostrar una caja de mensaje de confirmacin, al cerrar el formulario,con la siguiente apariencia:

VICTOR M. SANCHEZ FALCON

24

VISUAL BASIC NET 2012

Button (Botn)
Propiedades. Name: por motivos de reconocimiento, se puede anteceder el prefijo btn al nombre. Image: establece la imagen que ser mostrada dentro del botn. ImageAlign: define la alineacin de la imagen insertada en el botn. Text: Establece el texto mostrado por el botn. TextAlign: define la alineacin del texto del botn.

Ejercicio 4

Disear el siguiente formulario.

TextBox (txtNombre) TextBox (txtClave)

Button (btnMostrar)

Label (lblMsg)

En la aplicacin, el usuario deber escribir su nombre y una clave de 3 caracteres (propiedades PasswordChar y MaxLength), y al hacer clic sobre el botn Mostrar, se debe mostrar en lblMsg un mensaje: Bienvenido Juan Perez, tu clave es 123 .

VICTOR M. SANCHEZ FALCON

25

VISUAL BASIC NET 2012

Variables y Tipos de Datos


Tipos de Datos en Visual Basic .NET
El tipo de datos de un elemento de programacin hace referencia a la clase de datos que puede contener y a cmo se almacenan los datos. El sistema de tipos comunes ( Common Type System CTS) define los tipos de datos que soporta el Common Language Runtime. Visual Basic .NET utiliza tipos de datos que se corresponden directamente con los tipos de datos del sistema de tipos comunes.

El sistema de tipos comunes define cmo se declaran, utilizan y gestionan los tipos en el Common Language Runtime. Cada tipo de datos utilizado en Visual Basic .NET corresponde directamente a un tipo definido en el sistema de tipos comunes. La siguiente tabla muestra los tipos de datos soportados en Visual Studio .NET 2010. .NET Framework Boolean Byte Int16 Int32 Int64 Single Double Decimal DateTime String Char Object VB .NET Boolean Byte Short Integer Long Single Double Decimal Date String Char Object C# bool byte short int long float double decimal date string char object Bytes 1 1 2 4 8 4 8 16 8 var 2 var Rango True / false 0 a 255 -32768 a 32767 -2147483648 a 2147483647 -10 E19 a 10 E19 -10 E38 a 10 E38 -10 E308 a 10 E308 -10 E28 a 10 E28 1/1/0001 a 31/12/9999 -

VICTOR M. SANCHEZ FALCON

26

VISUAL BASIC NET 2012

Variables y Constantes
A menudo, cuando realizamos clculos en Visual Basic necesitamos almacenar valores temporalmente. Por ejemplo, es posible que necesitemos calcular varios valores, compararlos y realizar diferentes operaciones con ellos dependiendo del resultado de la comparacin. Utilizamos variables para almacenar valores que pueden cambiar cuando una aplicacin se est ejecutando. Una variable tiene los elementos siguientes:

Dim miEdad As Integer

Ambito

Nombre de la Variable

Tipo de Dato

Cuando nombramos una variable en Visual Basic .NET, debemos tener en cuenta las siguientes reglas: Iniciar cada nombre de variable con un carcter alfabtico o un guin bajo (_). No utilizar espacios ni smbolos. No utilizar palabras clave como Integer o Date.

Se recomienda que tenga en cuenta las siguientes directrices cuando nombre variables: Proporcione nombres descriptivos y con significado, como numeroCuenta. Aunque escribir un nombre largo de variable puede resultar tedioso en el momento de escribir cdigo, har que el cdigo sea ms fcil de leer y mantener. Inicie cada palabra del nombre de una variable pblica con letra mayscula, como NombreCliente. Esto se denomina PascalCasing. Evite el uso de abreviaturas. Aunque es posible utilizar un nombre de variable como nocta, el cdigo ser mucho ms fcil de leer si utilizamos el nombre numeroCuenta. En caso de ser necesario el uso de abreviaturas, debemos asegurarnos de que sean coherentes en toda la aplicacin. Utilice un nombre nico dentro del mbito de la variable. mbito (scope) hace referencia al subconjunto del cdigo que reconoce la variable.

Antes de poder utilizar variables en su aplicacin, debe asignarles un valor. Puede asignar un valor a una variable despus de declararla o mientras la declara.

Dim miEdad As Integer miEdad = 0 Dim Nombre As String Nombre = Victor Dim FechaNac As Date FechaNac = #12/04/2012#

Dim miEdad As Integer = 0 Dim Nombre As String = Victor

Dim FechaNac As Date = #12/04/2012#

VICTOR M. SANCHEZ FALCON

27

VISUAL BASIC NET 2012


Si una variable de su programa contiene un valor que no cambia nunca, considere almacenar el valor como una constante en lugar de una variable. Las constantes proporcionan una forma de utilizar nombres con significado en lugar de un valor que no cambia (como , una cantidad matemtica fija). Las constantes almacenan valores que, como su nombre indica, permanecen constantes durante la ejecucin de una aplicacin. Algunas ventajas de utilizar constantes son: Hacen que el cdigo sea ms fcil de leer. Utilizan menos memoria que las variables. Hacen que los cambios a nivel de aplicacin sean ms fciles de implementar.

Para declarar una constante, utilice la instruccin Const con la siguiente sintaxis:

Const TipoCambio As Single = 2.8


Palabra reservada Nombre de la Constante Tipo de Dato Valor

Operadores Aritmticos y de Comparacin. Expresiones Aritmticas y Lgicas.


Una vez declaradas las variables, estas pueden ser usadas en determinador procesos aritmticos y lgicos.

Operadores Aritmticos
OPERADOR NOMBRE Suma Resta Multiplicacin Divisin Divisin Entera Mdulo o Residuo Exponente Ejemplo S= 10 + 2 (devuelve 12) R= 15 6 (devuelve 9) P= 10 * 2 (devuelve 20) D= 8 / 3 (devuelve 2.666) E = 15 \ 6 (devuelve 2) M = 13 mod 5 (devuelve 3) T = 5 ^ 2 (devuelve 25)

+ * / \ mod ^

Operadores de Asignacin
OPERADOR NOMBRE Asignar Incrementos Decrementos Concatenacin Contnua Ejemplo S= 10 (a S se le asigna el valor de 10) R + = 2 (al valor inicial de R se aumenta de 2 en 2) R -= 1 (al valor inicial de R se disminuye de 1 en 1) Cad1 &= OH (devuelve OHOH)

= += -= &=

VICTOR M. SANCHEZ FALCON

28

VISUAL BASIC NET 2012

Operadores de Comparacin
OPERADOR NOMBRE Mayor que Menor que Mayor o igual que Menor o igual que Diferente que Igual que A = 10>3 B = 5<3 Ejemplo (devuelve True) (devuelve False)

> < >= <= <> =

C = 3 >=5 (devuelve False) D = 6 <= 8 (devuelve False) E = 3 <> 5 (devuelve False) F=3=3 (devuelve True)

Operadores Lgicos
OPERADOR NOMBRE Y Ejemplo Devuelve True si ambas expresiones son verdaderas. Devuelve el valor contrario del valor afectado. Devuelve False si ambas expresiones son falsas. Devuelve False si ambas expresiones son iguales.

And Not Or Xor

No

Exclusin

Conversin Explcita e Implcita de datos.


El proceso de convertir el valor de un tipo de datos en otro se denomina conversin o casting. Podemos convertir explcitamente valores de un tipo en otro antes de que sean utilizados, evitando as errores en nuestro cdigo y haciendo que ste se ejecute ms rpidamente. Visual Basic .NET tambin puede realizar algunas conversiones de tipos de datos automtica o implcitamente, como convertir algunas cadenas a enteros. Sin embargo, las conversiones implcitas pueden producir resultados imprevistos.

Conversin Implicita
Visual Basic puede realizar algunas conversiones de tipos de datos implcitamente. Una conversin implcita se produce cuando un valor se convierte automticamente de un tipo de datos en otro requerido por el cdigo en que el tipo de datos se utiliza. No requiere ninguna sintaxis especial en el cdigo fuente. Por ejemplo, si colocamos la cadena 1234 en una variable Integer, Visual Basic convertir automticamente la cadena en un entero. O, si una cadena como 100 se aade a un valor numrico en la frmula 100 + 10, Visual Basic convierte implcitamente la cadena en el valor entero 100 y lo aade a 10.

VICTOR M. SANCHEZ FALCON

29

VISUAL BASIC NET 2012

Conversin Explicita
Se recomienda el uso de funciones de conversin para convertir valores explcitamente antes de que sean utilizados. Las conversiones explcitas se ejecutan ms rpidamente que las conversiones implcitas porque no hay llamada a un procedimiento para llevar a cabo la conversin. Una conversin implcita es una conversin automtica de un valor de un tipo en otro. Para utilizar una funcin de conversin, se sita en el lado derecho de una instruccin de asignacin, utilizando la siguiente sintaxis:

VariableName = CFunction(Expression)
El parmetro expression puede ser cualquier expresin vlida, como una variable, un resultado de una funcin o un valor constante.

VICTOR M. SANCHEZ FALCON

30

VISUAL BASIC NET 2012

Funciones de Conversin: CInt, CDbl, CStr, , etc.


Las variables pueden convertirse de un tipo de dato a otro, por ejemplo: Una expresin cadena, convertirla a Numero. Veamos un resumen de las distintas funciones de conversin de tipos y algunos ejemplos: (estos estn tomados de la ayuda de Visual Basic .NET) Nombre de la funcin CBool(expresion) CByte(expresion) CChar(expresion) CDate(expresion) CDbl(expresion) CDec(expresion) CInt(expresion) CLng(expresion) CObj(expresion) CShort(expresion) CSng(expresion) CStr(expresion) Tipo de datos Valores del argumento "expresion" que devuelve Boolean Cualquier valor de cadena o expresin numrica. Byte Char Date Double Decimal Integer Long Object Short Single String de 0 a 255; las fracciones se redondean. Cualquier expresin de cadena; los valores deben ser de 0 a 65535. Cualquier representacin vlida de una fecha o una hora. Cualquier valor Duoble, ver la tabla anterior para los valores posibles. Cualquier valor Decimal, ver la tabla anterior para los valores posibles. Cualquier valor Integer, ver la tabla anterior para los valores posibles, las fracciones se redondean. Cualquier valor Long, ver la tabla anterior para los valores posibles, las fracciones se redondean. Cualquier expresin vlida. Cualquier valor Short, ver la tabla anterior para los valores posibles, las fracciones se redondean. Cualquier valor Single, ver la tabla anterior para los valores posibles. Depende del tipo de datos de la expresin.

Nota: Todos los objetos de vb.NET tienen unos mtodos para realizar conversiones a otros tipos, al menos de nmero a cadena, ya que tienen la propiedad .ToString que devuelve una representacin en formato cadena del nmero en cuestin (igual que CStr). CType(expresion, Tipo) El indicado en el Cualquier tipo de datos segundo parmetro Val(expresion) Double Una cadena de caracteres.

mbito de una Variable: Local, Privado y Pblico


Cuando utilizamos variables, debemos asegurarnos de que son accesibles desde todas las reas de cdigo que hacen referencia a ellas. Por otra parte, es posible que necesite restringir el acceso a determinadas variables. Todo el conjunto de cdigo que puede hacer referencia a una variable por su nombre se denomina mbito (scope) de la variable. Esta leccin describe los diferentes niveles de mbito aplicables a variables y explica cmo asegurarse de que cada variable de nuestra aplicacin tiene el mbito adecuado.

VICTOR M. SANCHEZ FALCON

31

VISUAL BASIC NET 2012

Cuando declaramos variables, uno de los primeros aspectos que probablemente consideraremos es el mbito. Si utilizamos una variable fuera de su mbito, el compilador generar un error.

VICTOR M. SANCHEZ FALCON

32

VISUAL BASIC NET 2012

APLICACIONES

1. Construir una aplicacin que permita calcular el rea de un rectngulo. Se sabe que: AREA=BASE x ALTURA

El botn Calcular, realizar el proceso de clculo del Area.


Private Sub btnCalcular_Click(..)

End Sub

El botn Limpiar, reiniciar los valores del las cajas de texto, y el enfoque estar en txtAltura.
Private Sub btnLimpiar_Click(..)

End Sub

El botn Cerrar, debe cerrar el formulario actual.


Private Sub btnCerrar_Click(..)

End Sub

VICTOR M. SANCHEZ FALCON

33

VISUAL BASIC NET 2012

2. Construir una aplicacin que permita convertir grados centgrados a farenheit. Se sabe que: C = F 32 5 9

El botn Calcular, realizar el proceso de conversin.


Private Sub btnCalcular_Click(..)

End Sub

3. Construir un programa que calcule el salario de un trabajador de la manera siguiente. Se debe ingresar el pago por hora, la cantidad de horas laboradas, las horas de tardanza y se aplicar un descuento el 10% en concepto de impuesto sobre la renta. Como salida debe imprimir el sueldo bruto, el descuento de renta y el salario a pagar.

VICTOR M. SANCHEZ FALCON

34

VISUAL BASIC NET 2012

El botn Calcular, realizar el proceso de clculo.


Private Sub btnCalcular_Click(..)

End Sub

4. Construir una aplicacin en donde ingrese un nmero entero de tres cifras, y debe mostrarse el mismo nmero al revs.

El botn Evaluar, realizar el proceso.


Private Sub btnEvaluar_Click(..)

End Sub

VICTOR M. SANCHEZ FALCON

35

VISUAL BASIC NET 2012


5. Elaborar un programa en donde ingrese un numero entero que represente a una cantidad de segundos, y que muestre el equivalente en horas minutos y segundos. Por ejemplo, si ingresa 7352, debe mostrar 2 Hrs 5 Min 52 Seg.

El botn Evaluar, realizar el proceso.


Private Sub btnEvaluar_Click(..)

End Sub

APLICACIONES PROPUESTAS

1. Construir una aplicacin que permita calcular el rea de un tringulo (base x altura/2). 2. Suponga que un individuo desea invertir su capital en un banco y desea saber cunto dinero ganar despus de un mes si el banco paga a razn de 2% mensual. Realiza un programa que calcule dicha ganancia teniendo como entrada el capital invertido. 3. Escribe un programa que lea una cantidad depositada en un banco y que calcule la cantidad final despus de aplicarle un 20% de inters. 4. Elabore un programa que realice la conversin de cm. a pulgadas. Donde 1cm = 0.39737 pulgadas. Por lo tanto, el usuario proporcionara el dato de N cm. y el programa dir a cuantas pulgadas es equivalente. 5. Un vendedor recibe mensualmente un sueldo base ms un 10% extra por comisin de sus ventas. El vendedor desea saber cunto dinero obtendr por concepto de comisiones por las tres ventas que realiza en el mes y el total que recibir en el mes tomando en cuenta su sueldo base y comisiones.

VICTOR M. SANCHEZ FALCON

36

También podría gustarte