Sie sind auf Seite 1von 60

Microsoft Visual Basic

.NET
Por: Ing. Renán Gálvez Astudillo
COLEGIO DE BACHILLERATO
DR. CAMILO GALLEGOS DOMINGUEZ
Arquitectura Cliente / Servidor
• Es utilizada por todas las aplicaciones de
Internet/Intranet.
• Un servidor es un ordenador remoto -- en algún
lugar de la red -- que proporciona información según
petición.
• Un cliente funciona en su ordenador local, se
comunica con el servidor remoto, y pide a éste
información.
• El servidor envía la información solicitada.
Decisión a tomar?
• Cliente/Servidor es la arquitectura abierta por
excelencia, por la variedad de combinaciones
de clientes y servidores que permite establecer
en red.
• Elegir las plataformas para los S.O.
– Windows, Linux, Unix, Solaris , Mac
• Las herramientas de desarrollo.
• Los proveedores y las bases de administración
de la arquitectura Cliente/Servidor
• Protocolo de Comunicación
• La tecnología de creación para su Orientación
El Servidor
Es la entidad física que provee un servicio y devuelve
resultados; ejecuta el procesamiento de datos,
aplicaciones y manejo de la información o recursos.

• Servidor de Archivos.
• Servidor de Bases de datos.
• Servidor de Transacciones.
• Servidor de Groupware.
• Servidor de Objetos.
• Servidor de Web.
• Servidor de Impresoras.
• Servidor de Aplicaciones.
• Servidor de Respaldos.
El Cliente
Visual Basic .NET
• Visual Basic .NET forma parte de la
versión de Visual Studio .NET.
• Crear con rapidez aplicaciones robustas
para Microsoft Windows® y Web.
• Creación de formularios Windows Forms y
Web Forms proporcionan un único modelo
de desarrollo y crear tanto aplicaciones de
escritorio completas como aplicaciones
Web de amplio alcance.
• Aplicaciones para dispositivos.
• Resuelve los problemas de implementación
y control de versiones.
• Proporciona acceso a datos flexible y
sencillo.
• Basado en Programación Orientada a
Objetos.
.NET FRAMEWORK
• Es un conjunto de tipos, clases, servicios y
herramientas que de manera combinada forman
la nueva plataforma .Net.
• Representa el Kit de desarrollo y máquina
Virtual de ejecución (JAVA)
• Múltiples lenguajes en una sola plataforma
• Clases predefinidas de funcionalidad extensible
• Modelos de programación unificados
• Organización jerárquica de NameSpaces o
Paquetes
• Soporte para servicios Web y XML
Arquitectura de .Net Framework

.
N Múltiples
VB C# C++ JScript ...
E Lenguajes
T
Especificación de Lenguaje común (CLS)

Visual Studio .Net


F
r Librerías ASP.NET Windows Forms
a de clases
extendidas ADO.NET XML
m
e
w Librerías de clases base
o Tiempo de ejecución en Lenguaje Común
r (CLR)
k

Servicios MSMQ COM+ IIS Windows


Operativos
Microsoft .NET Framework
Redistributable 2.0
• Sistemas Operativos Soportados
– Microsoft Windows® 98
– Microsoft Windows NT® 4.0 (SP 6a required)
– Microsoft Windows Millennium Edition (Windows Me)
– Microsoft Windows 2000 (SP2 Recomendado)
– Microsoft Windows XP Professional
– Microsoft Windows XP Home Edition
• Proceso de Instalación dotnetfx.exe
Ms Visual Studio .NET
• IDE Integrated Development Environment
• Control sobre la escritura, depuración y
distribución de las implementaciones .NET
• Proyectos se Vuelven Soluciones.
• Pueden Coexistir varios proyectos en una
solución.
• Capacidad de Manejar
Múltiples Lenguajes.
Tipos de Aplicaciones o
Proyectos
• Aplicaciones para Windows.
• Biblioteca de Clases.
• Aplicación de Consola.
• Biblioteca de Controles Windows / Web.
• Servicios de Windows.
• Aplicación de Crystal Reports
• Aplicación de Dispositivo
El IDE de Visual Studio.NET
• Creación de un Proyecto “Aplicación para Windows”.
• Selección de Ventanas Activas.
• Barra de Menú y Herramientas
• Explorador de Soluciones
• Vista de Clases
• Explorador de Servidores
• Ventana Propiedades
• Cuadro de Herramientas
• Bandeja de Componentes
• Ejecutar con F5 y Genera la Aplicación EXE
Componentes de un Proyecto
en Visual Basic
• .sln Microsoft Visual Studio Solution Object
• .vbproj Visual Basic .NET Project
• .vb para Form, Module, Class, Component, UserControl
• .resx archivos recursos (img, sonido, texto)
• Carpeta My Project Visual Studio Project User Options
• AssemblyInfo.vb Información de mi proyecto en el
ensamblado.
• Cuando ha completado todos los archivos del proyecto
puede convertir el mismo en un archivo ejecutable (.exe)
(\Bin)
Conceptos de Orientación a
Objetos
• Clases, Propiedades, Métodos
• Constructores, SobreCarga y
Sobrelectura.
• Objetos e Instancias
• Herencia, Encapsulamiento y
polimorfismo.
• Interfaces
ABC de Visual Basic.NET

• Console (Consola)
• Tipos de Datos
• Enumeraciones
• Operadores
• IF / End IF
• Select Case / End Select
• Ciclos
– While / End While
– Do / Loop (While) (Until)
– For / Next
• Try Cath / End Try
Console (Clase)

• Representa las secuencias de entrada, salida y error


estándar para las aplicaciones de consola.
• La consola es una ventana del sistema operativo en la
que los usuarios interactúan con una aplicación de
consola basada en texto.
Propiedades Métodos
• Title • Clear()
• BackgroundColor • Write()
• ForegroundColor • WriteLine()
• WindowWidth • SetCursorPosition(Left, Top)
• WindowHeight • ResetColor()
• CursorVisible • Read()
• ReadLine()
Tipos de Datos

Private: La variable es privada dentro de su ámbito.


Dim: local al ámbito en que se declara. Más usada
dentro de procedimientos, funciones y eventos
Public: Las variables declaradas serán publicas y
Option Explicit On/Off
podrán estar accesibles desde cualquier parte del
código. Option Strict On/Off
Protected: Declarar variables para conseguiremos el Option Compare Binary/Text
encapsulamiento de datos y en las que deriven de ella.
Const: declaración de constantes.
Enumeraciones

• Las enumeraciones son una serie de valores


constantes (de tipo numérico), que de alguna
forma están relacionadas entre sí.

Enum Nombre As TipoDatoNumerico


‘Enumeraciones
End Enum

Ejemplo con Colores


Dim col As colores
col = colores.azul
Los Operadores

> Mayor que +Suma And


< Menor que - Resta Or
= Igual a * Multiplicación Not
<= menor o igual a / División Entera y Decimal AndAlso
>= Mayor o igual a \ División Entera OrElse
<> Distinto a Mod Residuo
^ Exponente

If a>10 then If a=1 and b=2 then


A= b mod c
endif endif
IF THEN / ENDIF

If a = 1 Then
IF THEN / ENDIF Debug.Print "Si"
Else
If Condicion Then If Condicion1 Then
Debug.Print "No"
[Instrucciones] [Instrucciones1] End If
[Else [Elseif Condicion2 ------------------------------------
If a = 1 Then
[Instrucciones]] [Instrucciones2]]
Debug.Print "1"
End If [Elseif Condicion3
ElseIf a = 2 Then
[Instrucciones3]] Debug.Print "2"
... ElseIf a = 3 Then
Debug.Print "3"
[Else
Else
[InstruccionesN]] Debug.Print "otro valor"
End If End If

Hacer Pruebas Visual Basic


Select Case / End Select
Select Case a
Case 1

Select Case Expresion Debug.Print "1"


Case 2
[Case ListaComprobacion1
Debug.Print "2"
[Instrucciones1]] Case 3
[Case ListaComprobacion2 Debug.Print "3"
Case 4 To 9
[Instrucciones2]]
Debug.Print "4 hasta 9"
... Case 13, 34
[Case Else Debug.Print "13 o 34"

[InstruccionesN]] Case Is > 15, Is < 20


Debug.Print ">15 y <20"
End Select
Case Else
Debug.Print "otro"
End Select
Caso
especial
Ciclos o Bucles

Los Bucles sirven para repetir un mismo


código un número determinado de veces, While <expresión>
e incluso un número indeterminado. ‘
End While

Do While <expresión>
• While / End While '
Loop
• Do / Loop (While) (Until)
Do
• For / Next '
Loop While <expresión>
Abandonar un bucle :
Do Until <expresión>
• Exit For '
Loop
• Exit While
• Exit Do Do
'
• Exit Sub Loop Until <expresión>

For <variable numérica> = <inicial> To <final> [Step <incremento>]


'
Next
Try Cath / End Try

• Control estructurado de errores


El método recomendado de capturar errores en Visual
Basic .NET, es usando la estructura Try Catch Finally.
La forma de usar esta estructura es:

Try
' el código que puede producir error
Catch [tipo de error a capturar]
' código cuando se produzca un error
Finally
' código se produzca o no un error
End Try
Prueba de Ejemplo
Controles Básicos

• Forms (SDI - MDI)


• Label &LinkLabel
• TextBox
• Button
• CheckBox
• GroupBox & Panel
• RadioButton
Formularios (Form)

• El formulario nos ofrece una serie de


propiedades, métodos y eventos.
• A nivel práctico un formulario se puede
considerar como un soporte donde
colocar controles.
• Los controles son los que se encargan
de recoger las acciones del usuario.
• Al realizar una aplicación deberemos en
primer lugar, diseñar una serie de
formularios que contengan aquellos
controles que hemos decidido emplear.
• Los Tipos de Formularios son MDI / SDI
<< Formulario >>
Propiedades y Eventos
• Name (FRM) • IsMdiContainer Eventos Importantes
• Text • Location (X,Y) • Resize
• AcceptButton (Enter) • Locked (Diseño) • Move
• AutoScroll • Load
• MaximizeBox
• BackColor
• BackgroundImage • MinimizeBox • Activate
• BackgroundImageLayout • Opacity • GotFocus
• CancelButton (Esc) • ShowInTaskbar • FormClosing
• ControlBox • Size (Width, Height) • FormClosed
• Cursor • StartPosition • Deactivate
• Enable • TopMost • Dispose
• Font • WindowState
• ForeColor
• FormBorderStyle • LostFocus
• Icon • Click
Propiedades Importantes • DoubleClick
• MouseMove
Controles
Label & LinkLabel
• Presentar Información texto y parrafos.
• Complementa a la descripción en pantalla de CTRL.
• LinkLabel es un label con el concepto de Hipervínculo
Propiedades Eventos
• Click
• Name (LBL/ LKL)
• • LinkClicked
• AutoSize Size
• BackColor • Text
• BorderStyle • TextAlign
• Enable • Visible Shell (RutaApp) (Explorer)
• Image • LinkColor
• Location • VisitedLinkColor
• Locked
Control TextBox

• Permite el Ingreso de datos por parte del usuario.


• Permite presentar información.
• Conocido como caja de texto.
Propiedades Eventos
• Name (TXT) • MaxLength
• BackColor • MultiLine • KeyPress
• BorderStyle • PasswordChar • TextChanged
• CharacterCasing • ReadOnly • LostFocus
• Enable • ScrollBars • GotFocus
• Font • Size • Click
• ForeColor • TabIndex
• Location • Text & Lines
• Locked • TextAlign Ver→ Orden Tabulacion
• Visible
• WordWarp
Control Button

El botón es un control de acción por parte del usuario,


puede ser usado confirmar o validar datos.
Propiedades Eventos
•Name(BTN) • Size El Evento más
•Backcolor • TabIndex importante es el:
•BackgroundImage (Fondo) • Text
•Image (Frontal) • TextAlign Click
•ImageAlign • Visible
•Enable
•FlatStyle
•Font
•ForeColor
•Location (X,Y)
Control CheckBox

• Casilla de Verificación
• Es un Control que se Evalúa
• Propiedades Eventos
•Name(ckb) •Location (X,Y) Es un Control que
•Appearance •Size se Evalua
•BackColor •TabIndex Los Eventos más
•BackgroundImage •Text importante es el:
•CheckAlign •Visible
•Checked (true/False) Click
•CheckedState(0/1) CheckedChanged
•Enable
•FlatStyle
•Font
•ForeColor
Control GroupBox & Panel

• Agrupar Controles.
• Se Consideran Contenedor
• Propiedades Eventos
•Name (gbx pnl) Click
•BackColor
•BackgroundImage
•Text (Solo GroupBox)
•Enable
•Visible
•BorderStyle (Panel)
•AutoScroll (Panel)
Control RadioButton

• Botón de Opción
• El un control que se evalúa
• Propiedades Eventos
•Name (rbt / opt) Es un Control que
•Appearence se Evalua
•BackColor Los Eventos más
•BackgroundImage importante es el:
•CheckAlign
Click
•Checked (true/false)
CheckedChanged
•FlatStyle
•Text

Se Agrupa por medio de Contenedores


Propiedades y Métodos

• La Mayoría de Propiedades que manejamos en tiempo de diseño se


pueden cambiar en tiempo de Ejecución.
NombreObjeto.<Propiedad> = NuevoValor
NuevoValor.- tipo de dato asociado a la propiedad del objeto.
• Los Métodos cumplen con procesos específicos y no devuelven un
valor
• Las funciones tipo funcion cumplen un proceso o calculo especifico
y devuelven un valor de retorno.

[Private|Public] Sub nombre_procedimiento (argumentos)


instrucciones
End Sub
[Private|Public] Function nombre_funcion (argumentos) [As tipo]
instrucciones
Return data
End Function
Agregar Módulos a nuestra
Aplicación

• Los módulos son una de las


formas que tiene VB.net de
reutilizar código.
• Un módulo es un archivo .vb
añadido al proyecto como
módulo.
• Todas las variables, funciones
y subrutinas públicas podrán
ser utilizadas desde el exterior
del módulo.
Module Module1
End Module
Analizar ByVal / ByRef
Controles Intermedios

• ComboBox
• Listbox
• CheckedListBox
• PictureBox
• TabControl
Controles
ListBox & ComboBox
• Controles de Alternativas de lista &
Opciones (Se Evalúan)
• Propiedades Eventos
•Name (lst cbx) Tiempo de ejecucion Click
•Backcolor •SelectedItem
•Items (Diseño) •SelectedIndex
•Enable •Items.Add
•Visible •Items.Clear()
•ScrollAlwaysVisible (Lista) •Items.RemoveAt(Index)
•DropDownStyle (Combo) •Items.Count()
•Text (Combo) •Items.Contains("Nombre")
•Items.IndexOf("Nombre")
Control CheckedListBox

• Contiene las mismas Propiedades y


eventos que un ListBox, pero permite
selecciones Múltiples.
• Las Propiedades Adicionales son:
• CheckedItems(indice) y
• CheckedIndices(indice)
• Evaluar con FOR hasta
CheckedItems.Count -1
Control PictureBox

• Manejo de Imágenes
• Propiedades Eventos
•Name (PCX) Click
•BorderStyle
•Image
•Visible
•Enable
•SizeMode

Tiempo de Ejecución
•foto.Image = Image.FromFile("c:\a.jpg")

Ver Objeto Application


Control TabControl

• Control de Fichas o Tab (Pestañas)


• Organizar Información Común
• Propiedades Eventos

•Name (TBC) Tab Pages Click


•Appearance •Name (TBP) No es usual
•Cursor •Text programar
•Enable •AutoScroll
•Font •BackColor
•Multiline •BackgroungImage
•Visible •BorderStyle
•ImageIndex (ImageList)
MDI & Agregar Nuevos Form

• Todo Sistema esta compuesto por varios


formularios SDI y Uno MDI
• Las Llamadas se hacen a través de la barra de
menú.
• Considere las Propiedades
IsMdiContainer=true (MDI)
MdiParent = Me (SDI)
• Métodos:
• Show
• ShowDialog

Realizar Práctica
Barra de Menú
MenuStrip
• Menú de la Aplicación.
• Organizado de las llamadas a los Formularios.

MenuStrip ToolStripMenuItem/ComboBox/TextBox/Separator
•Name (mnb) •Name (mnu)
•Backcolor •Backcolor El Evento más
•Font •Checked importante es el:
•MdiWindowListItem •CheckState
•Visible •CheckOnClick Click
•Dock •DisplayStyle
•RenderMode •DropDownItems
•Font
•Image
•Text
•ToolTipText
•Visible
•ShortcutKeys
Barras de Herramientas
ToolStrip
• Maneja Una Colección de Buttons

ToolStrip Button •Name (TipoControl)


•Name (tbr) Label •Backcolor
•Backcolor SplitButton •Checked
•Font •CheckState
DropDownButton
•Visible •CheckOnClick
Separator •DisplayStyle
•Dock
•RenderMode ComboBox •Font
Textbox •Image (Icono)
ProgressBar •Text
•ToolTipText
•DropDownItems (Datos)
El Evento más •Items (ComboBox)
importante es el:
Click (Cada Tipo)
Barras de estado
StatusStrip
• Presentar Información de estado de la
aplicacion
• Propiedades El Evento más
importante es el:
•Name (stb) StatusLabel Click (Cada Tipo)
•BackColor ProgressBar
•Visible No implementación
DropDownButton
•Dock SplitButton
Controles Adicionales

• DateTimePicker
• MonthCalendar
• VScrollBar
• HScrollBar
• Timer
• ErrorProvider
• HelpProvider
Controles DateTimePicker &
MonthCalendar
• Ingreso de Fecha y Hora en
forma de calendario
• Calendario Independiente
MonthCalendar
• Propiedades •Name (MTC)
•BackColor
DateTimePicker •MaxDate •Enable
•Name (DTP) •MinDate •Font
•CalendarFont •ShowUpDown •ForeColor
•CalendarForeColor •Value •MaxDate
•CalendarMonthBackground •Date •MinDate
•CalendarTitleBackColor •Day •AnnualyBoldedDates
•CalendarTitleForeColor •DayOfWeek •BoldedDates
•CalendarTrailingForeColor •Month •MonthlyBoldedDates
•Format •Year •ShowWeekNumbers
•Visible •TodayDate
Controles VScrollBar & HScrollBar

• Barra de Desplazamiento Vertical o


Horizontal
• Valores Numéricos
• Propiedades Eventos
•Name (HSC/VSC) •ValueChanged
•Enable •Scroll
•Maximun
•Minimun
•LargeChange
•SmallChange
•Value
Control Timer

• Un control Timer puede ejecutar código a


intervalos periódicos produciendo un evento
Tick.
• El control Timer, es invisible para el usuario.
• Resulta útil para el procesamiento de fondo.
• No existe ningún límite práctico en cuanto al
número de controles Timer activos.
• Propiedades Eventos

•Name TMR Tick


•Enable
•Interval
ErrorProvider & HelpProvider

• Manejo de mensajes de error y Ayudas al


usuario.
• Cada Control Tendrá Nuevas Propiedades
• Propiedades

•Name(ERP) name(HLP)
•BlinkRate
•BlinkStyle
•Icon
•SetError(control, "Mensaje")
•SetHelpString(control, "Mensaje")
Procedimientos Almacenados

• Un procedimiento almacenado es un grupo de


instrucciones Transact-SQL compiladas en
un único plan de ejecución.
• Los procedimientos almacenados contribuyen
a conseguir una implementación coherente
de una lógica entre las aplicaciones
• Las instrucciones SQL y la lógica necesarias
para ejecutar una tarea de ejecución frecuente
se pueden diseñar, escribir y probar de una
sola vez en un procedimiento almacenado
• Los procedimientos almacenados también
pueden aumentar el rendimiento
Formato de Procedimiento
Almacenado

create procedure NombreProcedimientos


@parametro1numeric ,@parametro2 varchar(60)
As
select * from usuario where codigo = @parametro1
return 1

Para declarar variables :


declare @iReturn int
ADO.NET

• ADO.NET es una evolución del modelo de


acceso a datos de ADO.
• Permite programar aplicaciones escalables.
• Se diseñó específicamente para el Web y
aplicaciones.
• Tiene independencia y usa el estándar XML.
• ADO.NET utiliza algunos objetos ADO, como
Connection y Command,
• Agrega objetos nuevos como DataSet,
DataReader y DataAdapter.
Modelo de Conexión

• Tenemos 3 tecnologías de accesos a Bases de Datos:


• DAO (Data Access Object)
• RDO (RemoteData Object)
• ADO (Activex Data Object)
• ADO.NET (Componente de .NET)

V ODBC
B Base

V OLEDB •Conectado y
B Base
•Desconectado

V SQLCLIENT SQL
B Server
OLEDB – Establecer Conexión

• Se necesita una variable Tipo de OleDbConnection


• Definir la cadena de Conexión en la Propiedad
ConnectionString
• Cadena de Conexión para SQL-Server
Provider=SQLOLEDB;Data Source=(local) ;Initial Catalog=Net;uid=sa;PWD=123“

• Aperturar la conexión con el método Open()


• Utilice try Cath, para controlar los posibles errores
Objetos OleDbCommand &
OleDbDataReader
• OleDbCommand se encarga de ejecutar
comandos para las operaciones de SQL
Insert, Delete y Update.
• Además de ejecutar sus variantes en
Procedimientos almacenados.
• El OleDbDataReader es un repositorio de
datos por esto almacena todo tipo de
consultas (select)
OleDbCommand con
Procedimientos
• Especificar el nombre de Procedimiento en la
propiedad CommandText
• Además deberá especificar el tipo de comando
a ejecutar (StoreProcedure) en CommandType
• Establecer el objeto de conexión en la
propiedad Connection (un objeto
OleDbConnection)
• Se recomienda utilizar la Colección Parameters,
Metodos Clear() y Add()
• Todo parámetro debe ser de tipo
OleDbParameter
Consulta con
OleDbDataReader
• Toda consulta utiliza al objeto OleDbCommand.
• Tanto en CommandText que deberá indicar
llamar un SP de consulta, el tipo de comando e
indicar la conexión
• El Objeto OleDbCommand nos da 3 alternativa
de ejecución
– ExecuteReader (Consulta)
– ExecuteScalar (Consulta)
• Deberá Asignar al objeto OleDbDataReader una
ejecución por ExecuteReader.
• Para leer la información el OleDbDataReader
dispone del Método Read, para obtener los
campos de la tabla sigua el siguiente formato:
DR(“NombreCampo”)
Eliminación con OleDbCommand

• Defina las tres propiedades CommandText,


CommandType y Conection.
• Si es eliminación individual utilice la colección
Parameters.
• Utilice el método ExcuteNonQuery() debido a
que no se espera datos.
• Validar con un msgbox una pregunta al usuario
“Si esta seguro de Eliminar?”
• Sentencia SQL
– Delete from empleados
– Delete from empleados where codigo=123
Ingresar con OleDBCommand

• Defina las tres propiedades CommandText,


CommandType y Conection.
• Utilice la colección Parameters para agregar
todo los datos a ingresar.
• Utilice el Método ExcuteNonQuery
• Todo Ingreso Directo debe tener previa una
consulta por la clave primaria, si esta repetida
no se ingresar el registro.
• Sentencia SQL
– Insert into empleado values (1,’Yamill’,’Lambert’,’A’)
– Insert into(Codigo,Nombre) empleado values
(1,’Yamill’,’Lambert’)
Actualizar con OleDBCommand

• Defina las tres propiedades CommandText,


CommandType y Conection.
• Utilice la colección Parameters para agregar
todo los datos a ingresar.
• Utilice el Metodo ExecuteNonQuery
• Una Actulización Directa involucra una previa
consulta por parte del usuario, puede utilizar
habilitar el boton Modificar por esta consulta.
• Sentencia SQL
– Update empleado set sueldo=100
– Update empleado set
nombre=‘Juan’,Apellido=‘sarango’ where codigo=123
Búsqueda General

• Tener el procedimiento almacenado de


Consulta general
• Utilizar una estructura de ciclo (while)
• Considere al Datareader como repositorio
de datos
• Ingrese los elementos a un Control Tipo
Lista , Combo o DataGridView
DataGridView
• Control Tipo Cuadricula o Tabla de datos
• Usado Para consultas y edición de datos masivos.
• Implementar DataTable y DataRow para los datos
• Obtener Datos Usar → grid<nombre>.Item(0, e.RowIndex).Value
• Propiedades Eventos
– Name CellClick
– AllowUserToAddRows
– AllowUserToDeleteRows
– AllowUserToOrderColumns
– AlternatingRowsDafaultCellStyle
– DefaultCellStyle
– Dock
– BackGroundColor
– Colums
– ReadOnly
– ScrollBars
– DataSource
– Visible

Das könnte Ihnen auch gefallen