Você está na página 1de 155

[Escriba texto]

MANUAL DE VISUAL BASIC


TALLER DE PROGRAMACIN DISTRIBUIDA

PARTE I

Prof. Robert Bautista Echevarra Ayacucho, 2013

Manual de Visual Basic Parte I

2013

INDICE

CAPTULO I.............................................................................................................................- 5 VISUAL STUDIO 2010.......................................................................................................... - 5 1.1. REQUERIMIENTOS Y CARACTERSTICAS....................................................- 5 1.2. DECLARACIN DE VARIABLES.......................................................................... - 5 1.3. CONCATENACIN DE CADENAS ...................................................................... - 5 1.4. INICIANDO VISUAL STUDIO 2010......................................................................- 6 1.5. CREAR UN NUEVO PROYECTO DE WINDOWS FORMS APPLICATION ........ - 8 1.6. ENTORNO DE VISUAL BASIC: ...........................................................................- 10 1.6.1. VENTANA EXPLORADOR DE PROYECTO.............................................. - 10 1.6.2. CUADRO DE HERRAMIENTAS.................................................................. - 11 1.6.3. VENTANA DE PROPIEDADES ................................................................... - 11 1.6.4. VENTANA EDITOR DE CDIGO...............................................................- 12 1.6.5. VENTANA DE DEPURACIN ....................................................................- 12 1.6.6. VENTANA DEL FORMULARIO..................................................................- 12 1.7. TERMINOLOGA ................................................................................................. - 13 1.7.1. OBJETOS ......................................................................................................- 13 1.7.2. CLASE...........................................................................................................- 13 1.7.3. PROPIEDADES ............................................................................................- 13 1.7.4. MTODOS ...................................................................................................- 13 1.7.5. EVENTOS .....................................................................................................- 13 1.8. ALGUNOS OBJETOS Y CONTROLES ................................................................. - 13 1.9. ALGUNAS PROPIEDADES .................................................................................. - 13 1.10. ALGUNOS MTODOS..................................................................................... - 13 1.10.1. SET FOCUS (ENTREGAR EL ENFOQUE) ..................................................- 13 1.10.2. DRAG............................................................................................................- 13 1.10.3. MOVE...........................................................................................................- 13 1.11. ALGUNOS EVENTOS.......................................................................................- 14 1.11.1. CLICK .......................................................................................................... - 14 1.11.2. DBLCLICK ................................................................................................... - 14 1.11.3. DRAGDROP ................................................................................................ - 14 1.11.4. KEYDOWN.................................................................................................. - 14 1.11.5. KEYUP ......................................................................................................... - 14 1.11.6. KEYPRESS ................................................................................................... - 14 1.11.7. MOUSEDOWN ........................................................................................... - 14 1.11.8. MOUSEUP................................................................................................... - 14 1.11.9. MOUSEMOVE ............................................................................................ - 14 1.11.10. CHANGE ..................................................................................................... - 14 -

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-3-

1.11.11.

LOAD........................................................................................................... - 14 -

CAPITULO II...........................................................................................................................- 15 ESTRUCTURA SELECTIVA ................................................................................................ - 15 2.1. ESTRUCTURA DE SELECCIN SIMPLE IF ........................................................ - 15 EJERCICIOS ............................................................................................................................. -20RADIOBUTTON .................................................................................................................... - 27 EJERCICIOS ........................................................................................................................... - 29 EJERCICIOS DE REFORZAMIENTO .................................................................................... - 36 EJERCICIOS ...........................................................................................................................- 59 JUEGO DE TRES EN RAYA............................................................................................. - 68 INCLUIR JUEGOS........................................................................................................... - 72 JUEGO DE BUSCAMINAS .............................................................................................. - 72 JUEGO DE MEMORIA.................................................................................................... - 79 OBJETO TIMER .....................................................................................................................- 89 LEFT,HEIGHT,WIDTH,TOP.................................................................................................- 90 MOVIENDO UN OBJETO CON KEYPRESS......................................................................... - 93 MOVIENDO UN OBJETO QUE LE SIGA AL MOUSE CON EL EVENTO MOUSEMOVE - 98 MOVER UNA IMAGEN SOBRE UN OBJETO ARRASTRE ................................................. - 99 RECEPCIONANDO UNA IMAGEN EN UNA MATRIZ EJEMPLO EL JUEGO DE TRES EN RAYA ..................................................................................................................................... - 101 ARMAR UN ROMPECABEZAS ............................................................................................- 103 CON ARRASTRE COPIAR EL TEXTO DE UN TEXTBOX A OTRO.................................. - 106 VENTANAS CON MEN .................................................................................................... - 108 REALIZACIN DE UN PROYECTO DE SOFTWARE......................................................... - 112 EJERCICIOS ..........................................................................................................................- 128 OBJETO TOOLSTRIP CON IMAGELIST............................................................................ - 135 MOVIMIENTOS DE LAS PIEZAS DEL AJEDREZ ...............................................................- 142 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-4-

Manual de Visual Basic Parte I 2013 3 CAPITULO I


VISUAL STUDIO 2010
1.1. REQUERIMIENTOS Y CARACTERSTICAS
Visual Studio tiene reservadas determinadas palabras clave para su uso exclusivo. Por ejemplo, si se usan las palabras clave o reservadas en Visual Studio como If, while, etc.En una sesin de la declaracin o programacin del cdigo, se estar indicando a visual Studio que debe realizar dicha funcin. Debe evitar usar una palabra clave reservada como nombre de un objeto. Si el nombre de un objeto coincide con una palabra clave, cada vez que se haga referencia al objeto debe aparecer entre identificadores delimitadores, como dobles comillas ( ) o corchetes ([ ]). Para hacer un comentario en una lnea se puede poner una comilla simple antes de ste (). Ejm.: la declaracin se hace as

Visual Studio no distingue las maysculas de las minsculas 1.2. DECLARACIN DE VARIABLES La declaracin de las variables en Visual Basic 2005 se hace por medio de la instruccin Dim seguida del nombre de la constante y del tipo de datos que esta contendr. Con una misma instruccin Dim podemos declarar ms de una variable, incluso de tipos diferentes, tal como veremos a continuacin. La siguiente lnea de cdigo declara una variable de tipo entero: Dim i As Integer Tal como hemos comentado, tambin podemos declarar en una misma lnea ms de una variable: Dim a, b, c, As Integer En este caso, las tres variables las estamos definiendo del mismo tipo, que es el indicado al final de la declaracin.

1.3.

CONCATENACIN DE CADENAS El operador de concatenacin de cadenas (+) concatena valores de cadena. El resto de las operaciones con cadenas se controla mediante las funciones de cadena.

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-5-

1.4.

INICIANDO VISUAL STUDIO 2010

Manual de Visual Basic Parte I 2013

Para iniciar el trabajo con Visual seguiremos los siguientes pasos: Buscamos el icono de Microsoft Visual Studio 2010 en el escritorio y hacemos doble clic.

Podemos escribir la siguiente direccin en el cuadro Ejecutar: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe y pulsar ENTER.

Es la ruta que adquiere el programa de Visual Studio 2010 en la instalacin estndar. Si no encontramos ste icono en el escritorio y no podemos ejecutar lo anterior hacemos lo siguiente: o Clic en el botn inicio. o Clic en todos los programas.

o Clic en Microsoft Visual Studio 2010.

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-6-

o Y finalmente hacemos clic en Microsoft Visual Studio 2010.

Manual de Visual Basic Parte I 2013

Esperamos que cargue

Observamos el Entorno de Visual Studio 2010.

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-7-

1.5.

CREAR UN NUEVO PROYECTO DE WINDOWS FORMS APPLICATION Para crear un nuevo proyecto hacemos clic primero en File (Archivo).

Manual de Visual Basic Parte I 2013

Luego hacemos clic en New Project (Nuevo Proyecto).

Clic en Visual Basic

Seguidamente hacemos clic en W indows Forms Application.

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-8-

Finalmente hacemos clic en OK.

Manual de Visual Basic Parte I 2013

Podemos observar la Form1 donde se trabajar en modo de diseo.

Y tambin se trabajar programando como en la siguiente ventana, para empezar a programar:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

-9-

1.6.

ENTORNO DE VISUAL BASIC:

Manual de Visual Basic Parte I 2013

Despus de haber creado un Proyecto de Windows Forms Application, se mostrar la ventana de Visual Basic:

1.6.1.

VENTANA EXPLORADOR DE PROYECTO

CTRL+R, CTRL+ALT+L

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 10 -

1.6.2.

CUADRO DE HERRAMIENTAS

Manual de Visual Basic Parte I 2013

CTRL+ALT+X

1.6.3.

VENTANA DE PROPIEDADES

F4

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 11 -

1.6.4.

VENTANA EDITOR DE CDIGO

Manual de Visual Basic Parte I 2013

F7

1.6.5.

VENTANA DE DEPURACIN

CTRL+G

1.6.6.

VENTANA DEL FORMULARIO

SHIFT+F7

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 12 -

1.7.

TERMINOLOGA 1.7.1. 1.7.2. 1.7.3. 1.7.4. 1.7.5.

Manual de Visual Basic Parte I 2013

OBJETOS Instancia de la clase, tiene propiedades atributos. CLASE Concepto, idea, las caractersticas y comportamientos comunes de los objetos. PROPIEDADES Caractersticas de los objetos, calificativo. MTODOS Se programa. EVENTOS Es una accin que se aplica a los objetos.

1.8.

ALGUNOS OBJETOS Y CONTROLES Formularios (Form) Botones de comando (Button) Etiquetas (Label) Cuadros de textos (TextBox) CheckBox RadioButton ListBox

1.9.

ALGUNAS PROPIEDADES Name (nombre) Caption (ttulo) Text (texto) Font (fuente) Fore color (color de primer plano) Backcolor (color de fondo) Enabled (disponible)

1.10.

ALGUNOS MTODOS 1.10.1. SET FOCUS (ENTREGAR EL ENFOQUE) Este mtodo se utiliza para hacer que un objeto reciba el enfoque. Este mtodo es uno de los ms usados para los controles de Visual Basic 6.0. 1.10.2. DRAG Inicia, termina o cancela una operacin de arrastre de cualquier control, excepto loscontroles Line, Menu, Shape, Timer o CommonDialog. 1.10.3. MOVE Se utiliza para mover un control o formulario, especificando sus coordenadas (Top, Left)y su tamao (W idth, Height).

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 13 -

1.11.

ALGUNOS EVENTOS 1.11.1. CLICK

Manual de Visual Basic Parte I 2013

Al hacer click. Ocurre cuando el usuario presiona y suelta un botn del mouse sobre un objeto. 1.11.2. DBLCLICK Ocurre cuando el usuario presiona y suelta dos veces un botn del mouse sobre unobjeto. 1.11.3. DRAGDROP Ocurre como resultado de arrastrar y soltar con el mouse un control sobre un determinado tipo de objeto. 1.11.4. KEYDOWN Ocurre cuando el usuario mantiene presionada una tecla. 1.11.5. KEYUP Ocurre cuando el usuario termina la operacin de pulsar una tecla. Se podra decir, que este evento ocurre precisamente al terminar el evento KeyDown. 1.11.6. KEYPRESS Ocurre como resultado de presionar y soltar una tecla. 1.11.7. MOUSEDOWN Ocurre cuando el usuario presiona un botn del mouse, pero a diferencia del evento. 1.11.8. MOUSEUP El evento MouseUp se produce cuando el usuario suelta el botn del mouse. Es un compaero til a los eventos MouseDown y MouseMove. 1.11.9. MOUSEMOVE Este evento ocurre mientras el usuario mueve o desplaza el puntero del mouse sobre un objeto. 1.11.10. CHANGE Al cambiar 1.11.11. LOAD Al cargarse en memoria

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 14 -

Manual de Visual Basic Parte I 2013


CAPITULO II
ESTRUCTURA SELECTIVA 2.1. ESTRUCTURA DE SELECCIN SIMPLE IF Calcular el descuento segn las especificaciones Sueldo 350-1200 1200-2500 2500-5000 5000-10000 10000-A mas Descuento 22% 19% 15% 9% 3%

Public Class Form2 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim vsuel, vdessoles, vneto As Double Dim vdespor As Integer If Not String.IsNullOrEmpty(TextBox1.Text) And Not String.IsNullOrWhiteSpace(TextBox1.Text) Then vsuel = TextBox1.Text If vsuel >= 350 Then If vsuel <= 1200 Then vdespor = 22 vdessoles = vsuel * 0.22 ElseIf vsuel <= 2500 Then vdespor = 19 vdessoles = vsuel * 0.19 ElseIf vsuel <= 5000 Then vdespor = 15 vdessoles = vsuel * 0.15 ElseIf vsuel <= 10000 Then vdespor = 9 vdessoles = vsuel * 0.09 ElseIf vsuel > 10000 Then vdespor = 3 vdessoles = vsuel * 0.03

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 15 -

Manual de Visual Basic Parte I 2013


Else vdespor = vdessoles End If vneto = vsuel TextBox2.Text TextBox3.Text TextBox4.Text 0 = vsuel = = = vdessoles vdespor vdessoles vneto

Else MessageBox.Show("EL SUELDO DEBE SER MAYOR O IGUAL A 350") MessageBox.Show("ARREGLALO") End If End If End Sub Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress If Char.IsDigit(e.KeyChar) Or Asc(e.KeyChar) = 46 Or Asc(e.KeyChar) = 8 Then e.Handled = False Else e.Handled = True End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 16 -

Manual de Visual Basic Parte I 2013

"para que no acepte un char que no sea nmero"

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 17 -

Notas

Manual de Visual Basic Parte I 2013

Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim vn1, vn2, vn3, vnp As Double 'ingresar notas vn1 = CDbl(TextBox1.Text) vn2 = CDbl(TextBox2.Text) vn3 = CDbl(TextBox3.Text) vnp = (vn1 + vn2 + vn3) / 3 TextBox5.Text = vnp If vnp >= 10.5 Then TextBox5.ForeColor = Color.Blue MessageBox.Show("Aprobado") Else TextBox5.ForeColor = Color.Red MessageBox.Show("Desaprobado") End If End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 'borrar las nota para ingresarlas nuevamente TextBox1.Text = Space(0) TextBox2.Text = Space(0) TextBox3.Text = Space(0) TextBox5.Text = Space(0) 'empezar a llenar desde la nota1 TextBox1.Focus() End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 18 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 19 -

Manual de Visual Basic Parte I 2013


EJERCICIOS Cambiar de color al formulario con el evento doubl click. Programar el cambio del color de fondo del formulario al dar doble click. Cambia al dar doble click, cambia de azul a rojo y de rojo a azul.

Public Class Form1 Private Sub Form1_MouseDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDoubleClick If Me.BackColor = Color.Blue Then Me.BackColor = Color.Red ElseIf Me.BackColor = Color.Red Then Me.BackColor = Color.Blue End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 20 -

Manual de Visual Basic Parte I 2013

Resolviendo una ecuacin con tres variables

Public Class Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim x, y, z, r As Double x = TextBox1.Text y = TextBox2.Text z = TextBox3.Text r = ((2 * Math.Pow(x, 4)) + 3 * Math.Pow(x, 2) * Math.Pow(y, 2)) / (y + (Math.Sqrt(4 * x * y * Math.Pow(z, 2))) - 2 * z) TextBox4.Text = r End Sub End Class

Robert Bautista Echevarra

PROGRAMACIN DISTRIBUIDA

- 21 -

Manual de Visual Basic Parte I 2013

Calcular promedios eliminando la menor nota

Public Class Form3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim n1, n2, n3, n4, v, p As Double n1 = TextBox1.Text n2 = TextBox2.Text n3 = TextBox3.Text n4 = TextBox4.Text v = n1 If n2 < v Then v = n2 End If If n3 < v Then v = n3 End If If n4 < v Then v = n4 End If p = (n1 + n2 + n3 + n4 - v) / 3 TextBox5.Text = p End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 22 -

Manual de Visual Basic Parte I 2013

Calculando el nmero mayor

Public Class Form4 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim n1, n2 As Double n1 = TextBox1.Text n2 = TextBox2.Text If n1 > n2 Then MessageBox.Show("El nmero mayor es " & n1) Else MessageBox.Show("El nmero mayor es " & n2) End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 23 -

Manual de Visual Basic Parte I 2013

Contando la cantidad de checkbox seleccionados

Public Class Form5 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim C As Integer C = 0 If CheckBox1.Checked Then C = C + 1 If CheckBox2.Checked Then C = C + 1 End If If CheckBox3.Checked Then C = C + 1 End If MessageBox.Show("Han sido seleccionados " + Str(C) + " checkbox") End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 24 -

Manual de Visual Basic Parte I 2013

Sueldos y sus descuentos

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 25 -

Manual de Visual Basic Parte I 2013


Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim VSB, VDES As Double VDES = 0 VSB = CDbl(TextBox4.Text) If CheckBox1.Checked Then VDES = VDES + VSB * 0.11 End If If CheckBox2.Checked Then VDES = VDES + 15 End If If CheckBox3.Checked Then VDES = VDES + CDbl(TextBox1.Text) End If TextBox2.Text = VDES TextBox3.Text = CStr(VSB - VDES) End Sub Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox3.CheckedChanged TextBox1.Enabled = CheckBox3.Checked End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load TextBox1.Enabled = False End Sub Private Sub TextBox1_EnabledChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.EnabledChanged TextBox1.Clear() End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 26 -

Sueldos y sus bonificaciones

Manual de Visual Basic Parte I 2013


RADIOBUTTON

Public Class Form2 Private Sub RadioButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton1.Click Dim SUEL, OTRO, T As Double SUEL = TextBox1.Text OTRO = SUEL * 0.1 T = SUEL + OTRO TextBox2.Text = OTRO TextBox3.Text = T 'MessageBox.Show("HOLA SOY EL RADIO BUTTON 1") End Sub Private Sub RadioButton2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton2.Click Dim SUEL, OTRO, T As Double SUEL = TextBox1.Text OTRO = SUEL * 0.2 T = SUEL + OTRO TextBox2.Text = OTRO TextBox3.Text = T 'MessageBox.Show("HOLA SOY EL RADIO BUTTON 2") End Sub Private Sub RadioButton3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton3.Click Dim SUEL, OTRO, T As Double SUEL = TextBox1.Text OTRO = SUEL * 0.35 T = SUEL + OTRO TextBox2.Text = OTRO TextBox3.Text = T 'MessageBox.Show("HOLA SOY EL RADIO BUTTON 3") End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 27 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 28 -

INTERFAZ:

Manual de Visual Basic Parte I 2013


EJERCICIOS

Public Class Form6 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form5.ShowDialog() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Form1.ShowDialog() End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Form2.ShowDialog() End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Form3.ShowDialog() End Sub Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Form4.ShowDialog() End Sub Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click Me.Close() End Sub End Class

1. GENERAR NUMEROS ALEATORIOS Y COMPARARLOS

COMPARAR

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 29 -

Manual de Visual Basic Parte I 2013

Public Class Form5 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim NUM1, NUM2 As Integer NUM1 = 1 + Math.Truncate(Rnd() * 12) NUM2 = 1 + Math.Truncate(Rnd() * 12) TextBox1.Text = NUM1 TextBox2.Text = NUM2 If NUM1 = NUM2 Then TextBox3.Text = " = " ElseIf NUM1 > NUM2 Then TextBox3.Text = " > " Else TextBox3.Text = " < " End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 30 -

Manual de Visual Basic Parte I 2013

2. CALCULAR LA SERIE Y SUMA DE LOS N PRIMEROS NUMEROS DE LA SIGUIENTE SERIE:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 31 -

Manual de Visual Basic Parte I 2013


Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X, I, TEMP As Integer Dim S As Double Dim CAD As String X = TextBox1.Text TEMP = 1 CAD = CStr(TEMP) S = 1 For I = 2 To X Step 1 TEMP = I CAD = CAD + " , " + CStr(TEMP) S = S + TEMP Next TextBox2.Text = CAD TextBox3.Text = S End Sub End Class

3. CALCULAR LA SERIE Y SUMA DE LOS N PRIMEROS NUMEROS DE LA SIGUIENTE SERIE:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 32 -

Manual de Visual Basic Parte I 2013


Public Class Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X, I, TEMP As Integer Dim S As Double Dim CAD As String X = TextBox1.Text TEMP = 2 CAD = CStr(TEMP) S = TEMP For I = 2 To X Step 1 TEMP = I * 2 CAD = CAD + " , " + CStr(TEMP) S = S + TEMP Next TextBox2.Text = CAD TextBox3.Text = S End Sub End Class

4. CALCULAR LA SERIE Y SUMA DE LOS N PRIMEROS NUMEROS DE LA SIGUIENTE SERIE:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 33 -

Manual de Visual Basic Parte I 2013


Public Class Form3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X, I, TEMP As Integer Dim S As Double Dim CAD As String S = 5 X = TextBox1.Text TEMP = 5 CAD = CStr(TEMP) For I = 1 To X - 1 Step 1 TEMP = TEMP + I CAD = CAD + " , " + CStr(TEMP) S = S + TEMP Next TextBox2.Text = CAD TextBox3.Text = S End Sub End Class

5. CALCULAR LA SERIE Y SUMA DE LOS N PRIMEROS NUMEROS DE LA SIGUIENTE SERIE:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 34 -

Manual de Visual Basic Parte I 2013


Public Class Form4 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X, I, TEMP As Integer Dim S As Double Dim CAD As String S = 2 X = TextBox1.Text * 2 TEMP = 2 CAD = CStr(TEMP) For I = 1 To X - 2 Step 2 TEMP = TEMP + I + 2 CAD = CAD + " , " + CStr(TEMP) S = S + TEMP Next TextBox2.Text = CAD TextBox3.Text = S End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 35 -

EJERCICIOS DE REFORZAMIENTO
1.

Manual de Visual Basic Parte I 2013

X Y Z

Calcular Resultado

+ 2+ + 222

RESOLUCIN: EN MODO DE DISEO:

EL CDIGO:
Public Class Form1 Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X, Y, Z, R As Double X = TextBox1.Text Y = TextBox2.Text Z = TextBox3.Text R = (Math.Sqrt(3 * Math.Pow(X, 4) + 2 * X * Math.Pow(Y, 2) * Z) + 5 * Math.Pow(X, 2) * Y) / (3 + Math.Pow(X, 2) * Math.Pow(Y, 2) * Math.Pow(Z, 2)) TextBox4.Text = R End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 36 -

PANTALLAS (FUNCIONAMIENTO):

Manual de Visual Basic Parte I 2013

2.

NGULO Calcular COSENO SENO TANGENTE


RESOLUCIN: EN MODO DE DISEO:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 37 -

EL CDIGO:

Manual de Visual Basic Parte I 2013

PANTALLAS (FUNCIONAMIENTO):

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 38 -

3.

Manual de Visual Basic Parte I 2013

N1 N2

N3 N4 Calcular MAYOR MENOR

RESOLUCIN: EN MODO DE DISEO:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 39 -

EL CDIGO:

Manual de Visual Basic Parte I 2013

PANTALLAS (FUNCIONAMIENTO):

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 40 -

4.

SUELDO BRUTO
BONIFICACIN

Manual de Visual Basic Parte I 2012


DESCUENTO

10 % S/. 15 Otro Calcular TOTAL BONIFICACIN TOTAL DESCUENTO

SUELDO NETO

RESOLUCIN: EN MODO DE DISEO:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 41 -

Manual de Visual Basic Parte I 2013


EL CDIGO:
Public Class Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim suel, bon, desc, suelnet As Double desc = 0 suel = TextBox1.Text If CheckBox1.Checked Then desc = desc + suel * 0.1 End If If CheckBox2.Checked Then desc = desc + 15 End If If CheckBox3.Checked Then desc = desc + CDbl(TextBox3.Text) End If If RadioButton1.Checked Then bon = suel * 0.08 End If If RadioButton2.Checked Then bon = 500 End If If RadioButton3.Checked Then bon = CDbl(TextBox2.Text) End If suelnet = suel + bon - desc TextBox4.Text = bon TextBox5.Text = desc TextBox6.Text = suelnet End Sub End Class

PANTALLAS (FUNCIONAMIENTO):

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 42 -

Manual de Visual Basic Parte I 2013

5.

LIBROS

ORACLE ng (S/. 80.99) SQL SERVER 2008 (S/. 75.00) PHP Y MY SQL (S/. 65.50) Google APPS (S/. 150.00) Windows Server 2008 (S/. 180.75) Calcular Cantidad de Libros Monto a Pagar

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 43 -

Manual de Visual Basic Parte I 2013


RESOLUCIN: EN MODO DE DISEO:

EL CDIGO:
Public Class Form3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim c, monto As Double c = 0 monto = 0 If CheckBox1.Checked Then c = c + 1 monto = monto + 80.99 End If If CheckBox2.Checked Then c = c + 1 monto = monto + 75.0 End If If CheckBox3.Checked Then c = c + 1 monto = monto + 65.5 End If If CheckBox4.Checked Then c = c + 1 monto = monto + 150.0 End If If CheckBox5.Checked Then c = c + 1 monto = monto + 180.75 End If TextBox1.Text = c TextBox2.Text = monto End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 44 -

Manual de Visual Basic Parte I 2013


PANTALLAS (FUNCIONAMIENTO):

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 45 -

6.

Manual de Visual Basic Parte I 2013

Nmero 1

Nmero 2

OPERACIN

RESPUESTA

RESOLUCIN: EN MODO DE DISEO:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 46 -

EL CDIGO:

Manual de Visual Basic Parte I 2013

Public Class Form4 Private Sub RadioButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton1.Click TextBox3.Text = CDbl(TextBox1.Text) + CDbl(TextBox2.Text) 'RadioButton1.Checked = False End Sub Private Sub RadioButton2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton2.Click TextBox3.Text = CDbl(TextBox1.Text) - CDbl(TextBox2.Text) End Sub Private Sub RadioButton3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton3.Click If TextBox2.Text = 0 Then MessageBox.Show("NO SE PUEDE DIVIDIR ENTRE 0") Else TextBox3.Text = CDbl(TextBox1.Text) / CDbl(TextBox2.Text) End If End Sub Private Sub RadioButton4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton4.Click TextBox3.Text = CDbl(TextBox1.Text) * CDbl(TextBox2.Text) End Sub End Class

PANTALLAS (FUNCIONAMIENTO):

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 47 -

Manual de Visual Basic Parte I 2013

7.

Nmero 1

Nmero 2

Verificar

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 48 -

Manual de Visual Basic Parte I 2013


RESOLUCIN: EN MODO DE DISEO:

EL CDIGO:

Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If TextBox1.Text > TextBox2.Text Then Label3.Text = " > " ElseIf TextBox1.Text < TextBox2.Text Then Label3.Text = " < " Else Label3.Text = " = " End If End Sub PANTALLAS (FUNCIONAMIENTO): End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 49 -

Manual de Visual Basic Parte I 2013

8.

NMERO AL AZAR MOSTRAR SUMA DE NMEROS MXIMO NMERO MNIMO NMERO PROMEDIO

(1-100)

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 50 -

Manual de Visual Basic Parte I 2013


RESOLUCIN: EN MODO DE DISEO:

EL CDIGO:
Public Class Form8 Private Sub Form8_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Randomize() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X, temp As Integer Dim S, MAY, MEN, i As Double Dim cad As String X = TextBox1.Text temp = CInt(1 + Rnd() * 100) S = temp cad = CStr(temp) MAY = temp MEN = temp For i = 2 To X temp = CInt(1 + Rnd() * 100) cad = cad + " - " + CStr(temp) S = S + temp MAY = Math.Max(MAY, temp) MEN = Math.Min(MEN, temp) Next TextBox2.Text = S TextBox3.Text = MAY TextBox4.Text = MEN TextBox5.Text = S / X TextBox6.Text = cad End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 51 -

PANTALLAS (FUNCIONAMIENTO):

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 52 -

Manual de Visual Basic Parte I 2013


EJERCICOS RESOLVER LAS SIGUIENTES SERIES INTERFAZ PARA TODAS LAS SERIES:

1.

2, 5, 10, 17, 26, ...

Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim s, c, t, nt, incre As Integer s = 0 c = 1 t = 2 nt = TextBox1.Text incre = 3 While c <= nt Label4.Text = Label4.Text + CStr(t) If c <= nt Then Label4.Text = Label4.Text + ", " s = s + t t = t + incre c = c + 1 incre = incre + 2 End If End While TextBox2.Text = s End Sub End Class

Robert Bautista Echevarra|

PROGRAMACIN DISTRIBUIDA

- 53 -

Manual de Visual Basic Parte I 2013

2.

2, -4, 6, -8, 10, -12, ...


Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim s, c, t, nt As Integer s = 0 c = 1 t = 2 nt = TextBox1.Text While c <= nt ' Label4.Text = Label4.Text + CStr(t) If c Mod 2 = 0 Then t = t * -1 End If Label4.Text &= CStr(t) If c < nt Then Label4.Text &= ", " If c = 10 Then Label4.Text &= Label4.Text + Chr(13) End If End If s = s + t t = Math.Abs(t) + 2 c = c + 1 End While TextBox2.Text = s End Sub End Class

Robert bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 54 -

Manual de Visual Basic Parte I 2013

3.

-5, 10, -15, 20, -25, 30, ...

Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim s, c, t, nt As Integer s = 0 c = 1 t = 5 nt = TextBox1.Text While c <= nt ' Label4.Text = Label4.Text + CStr(t) If c Mod 2 = 0 Then t = t * -1 End If Label4.Text &= CStr(t) If c < nt Then Label4.Text &= ", " If c = 10 Then Label4.Text &= Label4.Text + Chr(13) End If End If s = s + t t = Math.Abs(t) + 5 c = c + 1 End While TextBox2.Text = s End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 55 -

Manual de Visual Basic Parte I 2013

////////////////TAREA///////////////////////

1, 1, 2, 4, 7, 13, 24, ...


4. Serie de Fibonacci: LOS PRIMEROS N NMEROS DE LA SERIE Y LA SUMA

1, 1, 2, 3, 5, 8, 13, 21, ...

Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim c, tant, tact, nt, temp, s As Integer c = 2 tant = 1 tact = 1 s = tant nt = TextBox1.Text Label1.Text = CStr(tant) While c <= nt Label1.Text = Label1.Text + ", " + CStr(tact) s = s + tact temp = tact tact = tant + tact tant = temp c = c + 1 End While TextBox2.Text = s End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 56 -

Manual de Visual Basic Parte I 2013

LISTBOX

Public Class Form2 Dim I As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ListBox1.Items.Add(TextBox1.Text) End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBox2.Text = ListBox1.Items.Count End Sub Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged TextBox3.Text = ListBox1.SelectedItem(ListBox1.SelectedIndex) TextBox3.Text = ListBox1.SelectedItem TextBox4.Text = ListBox1.SelectedIndex + 1 ListBox1.Items.RemoveAt(0) 'ListBox1.Items.RemoveAt(ListBox1.SelectedIndex) End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 57 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 58 -

1. ALUMNOS: LISTA DE ALUMNOS:

Manual de Visual Basic Parte I 2013


EJERCICIOS
AGREGAR

TOTAL DE ALUMNOS:

Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If Trim(TextBox1.Text) = "" Then MessageBox.Show("ingresa un alumno") TextBox1.Focus() Else : ListBox1.Items.Add(TextBox1.Text) TextBox2.Text = ListBox1.Items.Count() TextBox1.Text = Space(0) TextBox1.Focus() End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 59 -

2.

LIBROS

Manual de Visual Basic Parte I 2013

Public Class Form2 Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ListBox1.Items.Add("SQL SERVER 2008") ListBox1.Items.Add("BASE DE DATOS AVANZADAS") ListBox1.Items.Add("ORACLE") ListBox1.Items.Add("VISUAL STUDIO 2010") ListBox1.Items.Add("OFICCE") ListBox1.Items.Add("MACROMEDIA FLASH MX") ListBox1.Items.Add("WINDOWS 2008") ListBox1.Items.Add("TIMERS") ListBox1.Items.Add("TEXTOS DE CUENTOS") ListBox1.Items.Add("HOJAS DE CALCUOLO") End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ListBox2.Items.Add(ListBox1.SelectedItem) ListBox1.Items.RemoveAt(ListBox1.SelectedIndex) End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ListBox1.Items.Add(ListBox2.SelectedItem) ListBox2.Items.RemoveAt(ListBox2.SelectedIndex) HAREMOS End SubCLICK EN EL PRIMER BOTN ELIGIENDO EL LIBRO QUE DESEAMOS End Class AS PASAR A LA LISTA DE LIBROS POR COMPRAR COMPRAR;

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 60 -

Manual de Visual Basic Parte I 2013

CUANDO NOS EQUIVOQUEMOS EN ELEGIR UN LIBRO HAREMOS CLIC EN EL SEGUNDO BOTN ELIGIENDO EL LIBRO YA NO DESEADO, ENTONCES PASAR A LA LISTA DE LIBROS

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 61 -

3. CODIGOS

A001 A002 A003 A004 A005 A006

Manual de Visual Basic Parte I 2013


CDIGO NOMBRE ARTCULO PRECIO STOCK

Public Class Form3 Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged TextBox1.Text = ListBox1.SelectedItem PictureBox1.Image = Image.FromFile("I" + CStr(ListBox1.SelectedIndex) + ".jpg") Select Case (ListBox1.SelectedIndex) Case 0 TextBox2.Text = "laptop" TextBox3.Text = "2800" TextBox4.Text = "5" Case 1 TextBox2.Text = "teclado" TextBox3.Text = "250" TextBox4.Text = "105" Case 2 TextBox2.Text = "mouse" TextBox3.Text = "100" TextBox4.Text = "50" Case 3 TextBox2.Text = "monitor" TextBox3.Text = "560" TextBox4.Text = "85" Case 4 TextBox2.Text = "CPU" TextBox3.Text = "560" TextBox4.Text = "85" Case Else TextBox2.Text = "otrito" TextBox3.Text = "560" TextBox4.Text = "85" End Select End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 62 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 63 -

4.

Manual de Visual Basic Parte I 2013


Public Class Form4 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim n1, n2, n3 As Integer Dim saldo As Integer n1 = (Math.Truncate(Rnd() * 5)) n2 = (Math.Truncate(Rnd() * 5)) n3 = (Math.Truncate(Rnd() * 5)) PictureBox1.Image = Image.FromFile("I" + CStr(n1) + ".jpg") PictureBox2.Image = Image.FromFile("I" + CStr(n2) + ".jpg") PictureBox3.Image = Image.FromFile("I" + CStr(n3) + ".jpg") If n1 = n2 = n3 Then MessageBox.Show("Ganaste!!!") ElseIf n1 = 0 And n2 = 0 And n3 = 0 Then MessageBox.Show("ganaste!!!" + CStr(100)) ElseIf n1 = 0 And n2 = 0 And n3 = 2 Then MessageBox.Show("ganaste!!!" + CStr(50)) ElseIf n1 = 2 And n2 = 3 And n3 = 1 Then MessageBox.Show("ganaste!!!" + CStr(25)) ElseIf n1 = 1 And n2 = 1 And n3 = 5 Then MessageBox.Show("ganaste!!!" + CStr(900)) End If saldo = 50 saldo = saldo - 1 saldo = saldo Label6.Text = saldo End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 64 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 65 -

5.

Manual de Visual Basic Parte I 2013

Public Class Form3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim N1, N2 As Integer N1 = (Math.Truncate(Rnd() * 11) + 1) N2 = (Math.Truncate(Rnd() * 11) + 1) PictureBox1.Image = Image.FromFile("C" + CStr(N1) + ".png") PictureBox2.Image = Image.FromFile("C" + CStr(N2) + ".png") If N1 > N2 Then Label1.Text = " ElseIf N1 < N2 Then Label1.Text = " Else Label1.Text = " End If End Sub End Class > < = " " "

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 66 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 67 -

Manual de Visual Basic Parte I 2013


JUEGO DE TRES EN RAYA El Tres en Raya es un juego muy popular. Objetivo: El objetivo de este juego es lograr formar una lnea recta con X o 0 en forma horizontal, vertical o diagonal. Reglas: Se puede jugar solamente entre dos personas X y 0. Se seleccionar aquel que empiece primero x o 0. Despus de hacer clic en las celdas en los diferentes turnos de cada jugador. Ganar aquel que haya cumplido con el objetivo del juego, iniciando as otro juego.

Juego en Visual Basic: Modo Diseo:

Modo de programacin o ejecucin


Public Class Form1 Dim nj As Integer Dim c As Integer Sub REINICIAR() Dim OBJ As Control For Each OBJ In Me.Controls If TypeOf OBJ Is PictureBox Then Dim IMG As PictureBox OBJ.Tag = "" IMG = OBJ IMG.Image = Nothing End If 'MessageBox.Show(OBJ.Name) nj = 0 c=0 RadioButton1.Enabled = True RadioButton1.Checked = True RadioButton2.Checked = False RadioButton2.Enabled = True Next End Sub

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 68 -

Private Sub C11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C11.Click, C12.Click, C13.Click, C21.Click, C22.Click, C23.Click, C31.Click, C32.Click, C33.Click If nj <= 1 Then RadioButton1.Enabled = False RadioButton2.Enabled = False End If If sender.tag = "" Then If nj Mod 2 = 0 Then sender.image = Image.FromFile("I:\x.png") sender.tag = "x" Else sender.image = Image.FromFile("I:\o.png") sender.tag = "o" End If nj += 1 c += 1 Else MessageBox.Show("Celda Ocupada por: " + sender.tag) End If If C11.Tag = sender.tag And C12.Tag = sender.tag And C13.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C11.Tag = sender.tag And C21.Tag = sender.tag And C31.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C13.Tag = sender.tag And C23.Tag = sender.tag And C33.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C31.Tag = sender.tag And C32.Tag = sender.tag And C33.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C11.Tag = sender.tag And C22.Tag = sender.tag And C33.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C13.Tag = sender.tag And C22.Tag = sender.tag And C31.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C21.Tag = sender.tag And C22.Tag = sender.tag And C23.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf C12.Tag = sender.tag And C22.Tag = sender.tag And C32.Tag = sender.tag Then MsgBox("BIEN HECHO, GANO " + sender.tag, MsgBoxStyle.Information, "ACIERTO") REINICIAR() ElseIf c = 9 Then MsgBox("EL JUEGO TERMIN, NO HAY GANADOR", MsgBoxStyle.Critical, "DESACIERTO") REINICIAR() End If End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load nj = 1 c=0 End Sub Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged nj = 0 End Sub Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged nj = 1 End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click REINICIAR() End Sub End Class

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 69 -

Cmo funciona?

Manual de Visual Basic Parte I 2013

Como determinado esta check el aspa o cruz, se empieza a jugar:

Caso cuando gana X:

Se puede elegir que empiece el crculo:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 70 -

Cuando se arrepienten del juego se puede reiniciar:

Manual de Visual Basic Parte I 2013

Caso cuando gana la o:

Caso que no hay ganador:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 71 -

Manual de Visual Basic Parte I 2013


INCLUIR JUEGOS JUEGO DE BUSCAMINAS 1. El Buscaminas es un juego aparentemente sencillo de memoria y lgica, adems de ser uno de los juegos ms populares.

Objetivo: Encontrar los recuadros vacos y evitar las minas. El tablero: Es una matriz de 6 x 6 (seis filas y seis columnas) y aleatoriamente estn 6 minas en diferentes casilleros. Cmo jugar Las reglas del Buscaminas son simples: 1. 2. 3. Si se descubre una mina termina el juego. Se hace clic en el botn Reiniciar para empezar otro. Si se desea reiniciar antes se hace clic en el botn Reiniciar. Si se descubre una carta de un as corazones sigue el juego.

En Visual Basic Modo de diseo

Cdigo: Robert Bautista Echevarra | PROGRAMACIN DISTRIBUIDA

- 72 -

PublicClassBuscaminas DimV(36) AsInteger Dim I, N AsInteger SubREINICIAR() Dim OBJ AsControl

Manual de Visual Basic Parte I 2013

ForEach OBJ InMe.Controls IfTypeOf OBJ IsPictureBoxThen Dim IMG AsPictureBox OBJ.Tag = "" IMG = OBJ IMG.Image = Nothing IMG.Enabled = True EndIf I=0 N=0 Next EndSub Subaleatorio() Randomize() Dim VAR, C AsInteger VAR = 1 While VAR > 0 VAR = 0 I = Math.Truncate(Rnd() * 36 + 1) 'genera un numero aleatorio en un rango de 1-36 For C = 0 To N If V(C) = I Then VAR += 1 EndIf Next EndWhile V(N) = I N += 1 EndSub PrivateSub C11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C11.Click, C12.Click, C13.Click, C14.Click, C15.Click, C16.Click, C21.Click, C22.Click, C23.Click, C24.Click, C25.Click, C26.Click, C31.Click, C32.Click, C33.Click, C34.Click, C35.Click, C36.Click, C41.Click, C42.Click, C43.Click, C44.Click, C45.Click, C46.Click, C51.Click, C52.Click, C53.Click, C54.Click, C55.Click, C56.Click, C61.Click, C62.Click, C63.Click, C64.Click, C65.Click, C66.Click aleatorio() sender.tag = CStr(i) If I = 1 Or I = 2 Or I = 3 Or I = 4 Or I = 5 Or I = 6 Then sender.image = Image.FromFile("f:\cartas\0.png") MsgBox("MINA, PERDISTE", MsgBoxStyle.Critical, "DESACIERTO") DimobjAsControl ForEachobjInMe.Controls IfTypeOfobjIsPictureBoxAndobj.Tag = ""Then

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 73 -

aleatorio() If I = 1 Or I = 2 Or I = 3 Or I = 4 Or I = 5 Or I = 6 Then DimimagenAsPictureBox imagen = obj imagen.Image = Image.FromFile("f:\cartas\0.png") EndIf obj.Tag = CStr(I) EndIf Next

Manual de Visual Basic Parte I 2013

Else sender.image = Image.FromFile("f:\cartas\1.png") If N = 30 Then MsgBox("BIEN HECHO, GANASTE!!!", MsgBoxStyle.Information, "ACIERTO") REINICIAR() EndIf EndIf EndSub PrivateSub Button1_Click(ByVal sender AsSystem.Object, ByVal e AsSystem.EventArgs) Handles Button1.Click REINICIAR() EndSub EndClass Pantallas de su funcionamiento Hacemos clic en Juego de Buscaminas

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 74 -

Se abre El juego

Manual de Visual Basic Parte I 2013

Hacemos clic en cualquiera de las celdas

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 75 -

Manual de Visual Basic Parte I 2013

Se puede encontrar una mina

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 76 -

Enseguida sale el mensaje de Mina, perdiste y aceptamos

Manual de Visual Basic Parte I 2013

Aparecen las seis minas escondidas, hacemos clic en reiniciar para jugar de nuevo

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 77 -

En otra jugada

Manual de Visual Basic Parte I 2013

Otra jugada

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 78 -

JUEGO DE MEMORIA 1.

Manual de Visual Basic Parte I 2013

El Juego de Memoria, denominado tambin pescador es un juego, que como el nombre indica, se necesita tener buena memoria para poder ganarlo.

Objetivo: Encontrar la pareja de una de las imgenes dentro de un grupo de imgenes. El tablero: Es una matriz de 4 x 4 (cuatro filas y cuatro columnas) y aleatoriamente estn dispuestas 8 imgenes con sus respectivas parejas. Al hablar de parejas se hace mencin a la misma imagen. Cmo jugar Las reglas del Juego de Memoria son las siguientes: a) Si se descubre la pareja de la imagen, previamente seleccionada; ambas se ocultan. Si se desea reiniciar antes se hace clic en el botn Reiniciar. b) Si no se descubre la imagen, ambas se voltean. En Visual Basic Modo de diseo

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 79 -

Cdigo:

Manual de Visual Basic Parte I 2013

Public Class Memoria Dim ig1 As New PictureBox Dim ig2 As New PictureBox Dim imag(16) As PictureBox Dim vector1(16) As Integer Dim j, cClick As Integer Private Sub Memoria_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Randomize() cClick = 0 j = -1 End Sub Function buscaRepet(ByVal ParamArray vector2() As Integer) As Integer 'ASIGNA UN NUMERO ALEATORIO (1-8) A CADA PICTUREBOX Dim cont, estado, numero As Integer 'QUE SLO SE REPITA DOS VECES estado = 0 j = j + 1 While estado < 1 numero = Int(Rnd() * 8) + 1 cont = 0 For k As Integer = 0 To j If numero = vector2(k) Then cont = cont + 1 End If Next If cont <= 1 Then vector2(j) = numero estado = 1 End If End While Return numero End Function Sub AsinaImagen(ByVal imagen As PictureBox) If imagen.Tag Is Nothing Then imagen.Tag = buscaRepet(vector1) imagen.Image = Image.FromFile(Application.StartupPath + "\IMAGS\" + CStr(imagen.Tag) + ".jpg") ' APPLICATION.STARTUPPATH PARA TENER LAS IMGENES EN EL MISMO PROYECTO imag(j) = imagen Else If imagen.BackColor <> Color.Black Then imagen.Image = Image.FromFile(Application.StartupPath + "\IMAGS\" + CStr(imagen.Tag) + ".jpg") End If End If End Sub Private Sub P34_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles P11.Click, P12.Click, P13.Click, P14.Click, P21.Click, P22.Click, P23.Click,

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 80 -

P24.Click, P31.Click, P32.Click, P33.Click, P34.Click, P41.Click, P42.Click, P43.Click, P44.Click Dim imgValida As New PictureBox imgValida = sender If imgValida.Image Is Nothing And imgValida.BackColor = Color.Pink Then cClick = cClick + 1 End If If (cClick = 1) Then ig1 = sender AsinaImagen(ig1) ElseIf (cClick = 2) Then ig2 = sender AsinaImagen(ig2) Else If ig1.Tag = ig2.Tag Then ig1.BackColor = Color.Black ig2.BackColor = Color.Black ig1.Image = Nothing ig2.Image = Nothing ig1 = sender AsinaImagen(ig1) ElseIf ig2.Image Is Nothing = False Then ig1.Image = Nothing ig2.Image = Nothing ig1 = sender AsinaImagen(ig1) End If cClick = 1 End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click For Z As Integer = 0 To j imag(Z).BackColor = Color.Pink imag(Z).Image = Nothing imag(Z).Tag = Nothing vector1(Z) = 0 Next j = -1 cClick = 0 End Sub End Class

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 81 -

Pantallas de su funcionamiento

Manual de Visual Basic Parte I 2013

Hacemos clic en Juego de Memoria

Se abre El juego

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 82 -

Hacemos clic en cualquiera de las celdas, se nos mostrar una imagen

Manual de Visual Basic Parte I 2013

Hacemos clic en cualquiera de las celdas, para encontrar la pareja

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 83 -

Como las imgenes so son las mismas, se voltearn, haremos click en otra

Manual de Visual Basic Parte I 2013

Seguiremos buscando la imagen de la ltima mostrada, al encontrarla; ambas se ocultarn:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 84 -

Al hacer click en otra imagen, las imgenes encontradas anteriormente se ocultarn:

Manual de Visual Basic Parte I 2013

Se seguir la misma secuencia, hasta que se termine el juego:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 85 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 86 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 87 -

Al hacer click en el botn: Reiniciar Juego, se nos mostrar nuevamente la interfaz de inicio

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 88 -

Manual de Visual Basic Parte I 2013


OBJETO TIMER
OBJETO NO VISIBLE SE ACTIVA EN FUNCIN DEL TIEMPO METODOS: TIMER1.START() TIMER1.STOP() DETENER EL CRONOMETRO INTERVAL=INTERVALO DE TIEMPO ENTRE CADA EVENTO

1. CAMBIAR DE COLOR AL FORMULARIO.


Public Class Form1 Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick Then If Me.BackColor = Color.Blue Else Me.BackColor = Color.Red

Me.BackColor = Color.Blue End If End Sub Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Me.BackColor = Color.Blue If Button1.Text = "INICIAR" Then Timer1.Start() Button1.Text = "DETENER" Else Timer1.Stop() Button1.Text = "INICIAR" End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 89 -

Manual de Visual Basic Parte I 2013

LEFT,HEIGHT,WIDTH,TOP
HSCROLLBAR

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 90 -

Manual de Visual Basic Parte I 2013

Programando el mismo ejemplo con radioButton:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 91 -

Manual de Visual Basic Parte I 20123


Public Class Form3 Dim direccion As Boolean Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load direccion = True HScrollBar1.Value = Timer1.Interval End Sub Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick If direccion = True Then If (PictureBox1.Width + PictureBox1.Left + 10) < Me.Width Then PictureBox1.Left = PictureBox1.Left + 100 Else direccion = False End If Else If PictureBox1.Left > 9 Then PictureBox1.Left = PictureBox1.Left - 100 Else direccion = True End If End If End Sub Private Sub HScrollBar1_Scroll(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles HScrollBar1.Scroll Timer1.Interval = 10000 - HScrollBar1.Value TextBox1.Text = HScrollBar1.Value End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If Button1.Text = "Iniciar" Then Timer1.Start() Button1.Text = "Parar" Else Timer1.Stop() Button1.Text = "Iniciar" End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 92 -

Manual de Visual Basic Parte I 2013

MOVIENDO UN OBJETO CON KEYPRESS


MOVIENDO OBJETOS CON KEY DOW KEY PREVIEW=TRUE Mover un objeto con las letras: A=izquieda S=derecha W=arriba Z=abajo

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 93 -

Se puede reemplazar el cdigo:

Manual de Visual Basic Parte I 2013


Then "S" Then "W" Then "Z" Then

'If Char.ToUpper(e.KeyChar) = "A" 'PictureBox1.Left -= 10 'ElseIf Char.ToUpper(e.KeyChar) = 'PictureBox1.Left += 10 'ElseIf Char.ToUpper(e.KeyChar) = 'PictureBox1.Top -= 10 'ElseIf Char.ToUpper(e.KeyChar) = 'PictureBox1.Top += 10 'End If

Por un iif anidado:

Public Class Form1 Private Sub Form1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress PictureBox1.Left -= IIf(Char.ToUpper(e.KeyChar) = "A", 1, 0) PictureBox1.Left += IIf(Char.ToUpper(e.KeyChar) = "D", 1, 0) PictureBox1.Top -= IIf(Char.ToUpper(e.KeyChar) = "W", 1, 0) PictureBox1.Top += IIf(Char.ToUpper(e.KeyChar) = "Z", 1, 0) End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 94 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 95 -

Moviendo una imagen con las flechas de desplazamiento

Manual de Visual Basic Parte I 2013

Public Class Form1 Private Sub Form1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown PictureBox2.Left -= IIf(e.KeyCode = Keys.Left, 10, 0) PictureBox2.Left += IIf(e.KeyCode = Keys.Right, 10, 0) PictureBox2.Top -= IIf(e.KeyCode = Keys.Up, 10, 0) PictureBox2.Top += IIf(e.KeyCode = Keys.Down, 10, 0) 'tambien se puede usar el siguiente cdigo alternativo 'PictureBox2.Left -= IIf(e.KeyCode = 37, 10, 0) 'PictureBox2.Left += IIf(e.KeyCode = 39, 10, 0) 'PictureBox2.Top -= IIf(e.KeyCode = 38, 10, 0) 'PictureBox2.Top += IIf(e.KeyCode = 40, 10, 0) End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 96 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 97 -

MOVIENDO UN OBJETO QUE LE SIGA AL MOUSE CON EL EVENTO MOUSEMOVE

Manual de Visual Basic Parte I 2013

Public Class EJER2 Private Sub EJER2_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove 'PictureBox1.Left = PictureBox1.Left + 10 'PictureBox1.Location = MousePosition Label1.Text = "X: " + CStr(e.X) + " y: " + CStr(e.Y) PictureBox1.Left = e.X PictureBox1.Top = e.Y End Sub Private Sub PictureBox1_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove Label2.Text = "X: " + CStr(e.X) + " y: " + CStr(e.Y) PictureBox1.Left += e.X PictureBox1.Top += e.Y End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 98 -

MOVER UNA IMAGEN SOBRE UN OBJETO ARRASTRE

Manual de Visual Basic Parte I 2013

Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'el picture 2 podr recepcionar el objeto arrastrado PictureBox2.AllowDrop = True End Sub Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove PictureBox1.DoDragDrop(PictureBox1.Image, DragDropEffects.Copy) End Sub Private Sub PictureBox2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox2.Click ' clic compuesto por dos mouse down y mouse up End Sub Private Sub PictureBox2_DragDrop(sender As Object, e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragDrop PictureBox2.Image = e.Data.GetData(DataFormats.Bitmap) End Sub Private Sub PictureBox2_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox2.DragEnter If e.Data.GetDataPresent(DataFormats.Bitmap) Then e.Effect = DragDropEffects.Copy Else e.Effect = DragDropEffects.None End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 99 -

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

- 100 -

Manual de Visual Basic Parte I 2013

RECEPCIONANDO UNA IMAGEN EN UNA MATRIZ EJEMPLO EL JUEGO DE TRES EN RAYA

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10110 1-

Manual de Visual Basic Parte I 2013


Public Class Form2 Dim c As Integer Private Sub Form2_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load 'LAS CELDAS podrN recepcionar el objeto arrastrado c11.AllowDrop = True c12.AllowDrop = True c13.AllowDrop = True c21.AllowDrop = True c22.AllowDrop = True c23.AllowDrop = True c31.AllowDrop = True c32.AllowDrop = True c33.AllowDrop = True End Sub Private Sub PictureBox1_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove PictureBox1.DoDragDrop(PictureBox1.Image, DragDropEffects.Copy) End Sub Private Sub PictureBox2_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles PictureBox2.MouseMove PictureBox2.DoDragDrop(PictureBox2.Image, DragDropEffects.Copy) End Sub Private Sub PictureBox2_Click(sender As System.Object, e As System.EventArgs) Handles PictureBox2.Click ' clic compuesto por dos mouse down y mouse up End Sub Private Sub c11_DragDrop(sender As Object, e As System.Windows.Forms.DragEventArgs) Handles c11.DragDrop, c12.DragDrop, c13.DragDrop, c21.DragDrop, c22.DragDrop, c23.DragDrop, c31.DragDrop, c32.DragDrop, c33.DragDrop sender.Image = e.Data.GetData(DataFormats.Bitmap) End Sub Private Sub c11_DragEnter(sender As Object, e As System.Windows.Forms.DragEventArgs) Handles c11.DragEnter, c12.DragEnter, c13.DragEnter, c21.DragEnter, c22.DragEnter, c23.DragEnter, c31.DragEnter, c32.DragEnter, c33.DragEnter If e.Data.GetDataPresent(DataFormats.Bitmap) Then e.Effect = DragDropEffects.Copy Else e.Effect = Not (DragDropEffects.None) End If End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10210 2-

Manual de Visual Basic Parte I 2013

ARMAR UN ROMPECABEZAS

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10310 3-

Manual de Visual Basic Parte I 2013


Public Class Form3 Dim var As Integer Dim objeto As PictureBox Private Sub Form2_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load PictureBox5.AllowDrop = True PictureBox6.AllowDrop = True PictureBox7.AllowDrop = True PictureBox8.AllowDrop = True End Sub Private Sub PictureBox5_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox5.DragDrop, PictureBox6.DragDrop, PictureBox7.DragDrop, PictureBox8.DragDrop sender.Image = e.Data.GetData(DataFormats.Bitmap) End Sub Private Sub PictureBox5_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles PictureBox5.DragEnter, PictureBox6.DragEnter, PictureBox7.DragEnter, PictureBox8.DragEnter If e.Data.GetDataPresent(DataFormats.Bitmap) Then If sender.tag = var Then e.Effect = DragDropEffects.Copy ' objeto.Image = Nothing End If End If End Sub Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove, PictureBox2.MouseMove, PictureBox3.MouseMove, PictureBox4.MouseMove sender.DoDragDrop(sender.Image, DragDropEffects.Copy) var = CInt(sender.tag) objeto = sender End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10410 4-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10510 5-

CON ARRASTRE COPIAR EL TEXTO DE UN TEXTBOX A OTRO

Manual de Visual Basic Parte I 2013

Public Class Form4 Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load TextBox1.AllowDrop = True End Sub Private Sub TextBox2_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox2.MouseMove If TextBox2.Text = "" Then Else : TextBox1.DoDragDrop(TextBox2.Text, DragDropEffects.Copy) End If End Sub Private Sub TextBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox1.DragDrop sender.text = e.Data.GetData(DataFormats.Text) End Sub Private Sub TextBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox1.DragEnter If TextBox2.Text = "" Then Else If e.Data.GetDataPresent(DataFormats.Text) Then e.Effect = DragDropEffects.Copy Else e.Effect = DragDropEffects.None End If End If TextBox2.Text = "" TextBox2.Focus() End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10610 6-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10710 7-

VENTANAS CON MEN


Para llamar a un aformulario

Manual de Visual Basic Parte I 2013

Dim FM1 As New consulta2 FM1.MdiParent = Me 'FM1 PERYENECE A UN FORM MDI Y SU PADRE ES ME.FORM1 FM1.Show() Para cerrar un formulario que est abierto con una opcin se escribe el siguiente cdigo Me.Close()

Public Class Form1 Private Sub ProductosPorCategoriaToolStripMenuItem_Click(ByVa l sender As System.Object, ByVal e As System.EventArgs) Handles ProductosPorCategoriaToolStripMenuItem.Click Dim FM1 As New consulta1 FM1.MdiParent = Me 'FM1 PERYENECE A UN FORM MDI Y SU PADRE ES ME.FORM1 FM1.Show() End Sub Private Sub ClientesPorCiudadToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles ClientesPorCiudadToolStripMenuItem.Click Dim FM1 As New consulta2 FM1.MdiParent = Me 'FM1 PERYENECE A UN FORM MDI Y SU PADRE ES ME.FORM1 FM1.Show() End Sub Private Sub SALIRToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIRToolStripMenuItem1.Click Me.Close() End Sub Private Sub SALIRToolStripMenuItem_Click(ByVal sender As , )

Un formulario consulta1 sin codigo

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10810 8-

Manual de Visual Basic Parte I 2013

Un formulario consulta20 sin codigo

Funcionamiento

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

10910 9-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11011 0-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11111 1-

REALIZACIN DE UN PROYECTO DE SOFTWARE


Empezaremos con crear el programa: Crear la ventana principal men

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11211 2-

Manual de Visual Basic Parte I 2013


Public Class Form1 Private Sub CLOUDCOMPUTINGToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CLOUDCOMPUTINGToolStripMenuItem.Click Dim frn As New Form2 frn.MdiParent = Me frn.Show() CLOUDCOMPUTINGToolStripMenuItem.Enabled = False End Sub Private Sub WIFIToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WIFIToolStripMenuItem.Click Dim frn As New Form3 frn.MdiParent = Me frn.Show() WIFIToolStripMenuItem.Enabled = False End Sub Private Sub VideoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VideoToolStripMenuItem.Click Dim frn As New Form4 frn.MdiParent = Me frn.Show() VideoToolStripMenuItem.Enabled = False End Sub Private Sub BISNESSINTELLIGENCEToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BISNESSINTELLIGENCEToolStripMenuItem.Click Dim frn As New Form5 frn.MdiParent = Me frn.Show() BISNESSINTELLIGENCEToolStripMenuItem.Enabled = False End Sub Private Sub CASCADAToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CASCADAToolStripMenuItem.Click Me.LayoutMdi(MdiLayout.Cascade) End Sub Private Sub HORIZONTALToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HORIZONTALToolStripMenuItem.Click Me.LayoutMdi(MdiLayout.TileHorizontal) End Sub Private Sub VERTICALToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VERTICALToolStripMenuItem.Click Me.LayoutMdi(MdiLayout.TileVertical) End Sub Private Sub SALIRToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIRToolStripMenuItem.Click Me.Close() Sub creando los formularios End o De la conferencia Cloud Computing Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.MenuStrip1.MdiWindowListItem = VENTANAToolStripMenuItem End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11311 3-

Manual de Visual Basic Parte I 2013

Public Class Form2 Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Form1.CLOUDCOMPUTINGToolStripMenuItem.Enabled = True Try PictureBox1.Image = Image.FromFile("cloud.png") Catch ex As Exception MessageBox.Show(ex.Message) End Try Try RichTextBox1.LoadFile("Compu.rtf") o Un formulario para nvegar por el internet (W ifi) Catch ex As Exception MessageBox.Show(ex.Message) End Try End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11411 4-

Manual de Visual Basic Parte I 2013

Public Class Form3 Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'WebBrowser1.Navigate("www.google.com") Form1.WIFIToolStripMenuItem.Enabled = True End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click WebBrowser1.Navigate(TextBox1.Text) End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11511 5-

Un formulario donde se pueda observar el video

Manual de Visual Basic Parte I 2013

Public Class Form4 Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load AxWindowsMediaPlayer1.URL = "Wildlife.wmv" Form1.VideoToolStripMenuItem.Enabled = True End Sub o Un formulario para la conferencia bisness intelligence End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11611 6-

Manual de Visual Basic Parte I 2013

Public Class Form5 Private Sub Form5_Disposed(sender As Object, e As System.EventArgs) Handles Me.Disposed Form1.BISNESSINTELLIGENCEToolStripMenuItem.Enabled = True End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA I

11711 7-

Funcionamiento Pantalla principal

Manual de Visual Basic Parte I 2013

Escogiendo la opcin bisness Intelligent

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11811 8-

Manual de Visual Basic Parte I 2013

Escogiendo la opcin Cloud computing

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

11911 9-

Escogiendo la opcin wifi

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12012 0-

Escogiendo la opcin video

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12112 1-

Escogiendo la opcin ventanacascada

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12212 2-

Escogiendo la opcin ventanahorizontal

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12312 3-

Escogiendo la opcin ventanavertical

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12412 4-

Escogiendo que formulario deseamos que est en primer plano

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12512 5-

Manual de Visual Basic Parte I 2013

Escogiendo la opcin salir

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12612 6-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12712 7-

1. CREAR UN FORMULARIO DONDE SI SE SELECCIONA UNA DETERMINADA CIUDAD APARECER UNA INFORMACIN DE ELLA, UNA FOTO Y UN VIDEO.

Manual de Visual Basic Parte I 20133


EJERCICIOS

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

12812 8-

Manual de Visual Basic Parte I 2013


Public Class Form1 Private Sub RadioButton1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RadioButton1.CheckedChanged, RadioButton2.CheckedChanged If RadioButton1.Checked = True Then Try PictureBox1.Image = Image.FromFile("Lighthouse.jpg") Catch ex As Exception MessageBox.Show(ex.Message) End Try Try RichTextBox1.LoadFile("Corazn Nuevo.rtf") Catch ex As Exception MessageBox.Show(ex.Message) End Try AxWindowsMediaPlayer1.URL = "hindu01.wmv" AxWindowsMediaPlayer1.Ctlcontrols.stop() ElseIf RadioButton2.Checked = True Then Try PictureBox1.Image = Image.FromFile("Desert.jpg") Catch ex As Exception MessageBox.Show(ex.Message) End Try Try RichTextBox1.LoadFile("CUZCO.rtf") Catch ex As Exception MessageBox.Show(ex.Message) End Try AxWindowsMediaPlayer1.URL = "hindu02.wmv" AxWindowsMediaPlayer1.Ctlcontrols.stop() ElseIf RadioButton3.Checked = False Then Try PictureBox1.Image = Image.FromFile("Hydrangeas.jpg") Catch ex As Exception MessageBox.Show(ex.Message) End Try Try RichTextBox1.LoadFile("AREQUIPA.rtf") Catch ex As Exception MessageBox.Show(ex.Message) End Try AxWindowsMediaPlayer1.URL = "hindu03.wmv" End If End Sub Private Sub RadioButton3_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RadioButton3.CheckedChanged Try PictureBox1.Image = Image.FromFile("Hydrangeas.jpg") Catch ex As Exception MessageBox.Show(ex.Message) End Try Try RichTextBox1.LoadFile("AREQUIPA.rtf") Catch ex As Exception MessageBox.Show(ex.Message) End Try AxWindowsMediaPlayer1.URL = "hindu03.wmv" AxWindowsMediaPlayer1.Ctlcontrols.stop() End Sub

Robert Bautista Echevarra End Class

PROGRAMACIN DISTRIBUIDA

- 129 -

SELECCIONANDO LA CIUDAD DE CAJAMARCA

Manual de Visual Basic Parte I 2013

SELECCIONANDO LA CIUDAD DE CUZCO

SELECCIONANDO LA CIUDAD DE AREQUIPA

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13013 0-

2. SELECCIONANDO DE UNA LISTA A UNA PGINA WEB RPIDAMENTE SE DEBER MOSTRAR DICHA PGINA EN EL LADO DERECHO:

Manual de Visual Basic Parte I 2013

Public Class Form2 Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged Select Case (ListBox1.SelectedIndex) Case 0 WebBrowser1.Navigate("WWW.GOOGLE.COM") Case 1 WebBrowser1.Navigate("WWW.UPLA.EDU.PE") Case 2 WebBrowser1.Navigate("WWW.CALETA.COM") Case 3 WebBrowser1.Navigate("WWW.HOTMAIL.COM") Case 4 WebBrowser1.Navigate("WWW.FACEBOOK.COM") Case 5 WebBrowser1.Navigate("WWW.WIKIPEDIA.COM") Case Else End Select End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13113 1-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13213 2-

3.

INICIAR UN VIDEO A TRAVS DE UN RADIOBOTTON APARECER EL SMBOLO DE PLAY PARA INICIAR EL VIDEO, CAMBIAR AL SMBOLO DE PARAR PARA REINICIAR EL VIDEO.

Manual de Visual Basic Parte I 2013

Public Class Form3 Dim P As Integer Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click If P = 1 Then Button1.Image = Image.FromFile("I1.JPG") AxWindowsMediaPlayer1.Ctlcontrols.stop() P = 2 ElseIf P = 2 Then Button1.Image = Image.FromFile("I2.JPG") AxWindowsMediaPlayer1.Ctlcontrols.play() P = 1 End If End Sub Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load P = 2 Button1.Text = "" Button1.Image = Image.FromFile("I1.JPG") AxWindowsMediaPlayer1.URL = "hindu05.wmv" AxWindowsMediaPlayer1.Ctlcontrols.stop() End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13313 3-

FUNCIONAMIENTO

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13413 4-

OBJETO TOOLSTRIP CON IMAGELIST

Manual de Visual Basic Parte I 2013

4. CREAR UN MEN Y LLAMAR ATRAVS DE UN TOOLSTRIP PONER IMGENES Y LLAMAR A CUATRO FORMULARIOS

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13513 5-

LOS FORMULARIOS TENDRN DIFEENTE COLOR PARA PODERLOS DISTINGUIR

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13613 6-

PARA CUANDO PASE EL MOUSE ENCIMA DE UNA IMAGEN SALDR EL NOMBRE DE UNA ACTIVIDAD: ESTO ES CON LA PROPIEDAD TOOLTIPTEX. EJEMPLO:

Manual de Visual Basic Parte I 2013

VISTA PREVIA:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13713 7-

CDIGO:

Manual de Visual Basic Parte I 2013

Public Class Form5 Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ToolStrip1.ImageList = ImageList1 ToolStripButton1.ImageIndex = 0 ToolStripButton2.ImageIndex = 1 ToolStripButton3.ImageIndex = 2 ToolStripButton4.ImageIndex = 3 End Sub Private Sub ToolStripButton1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click Dim FRM As New Form6 FRM.MdiParent = Me FRM.Show() End Sub Private Sub ToolStripButton2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click Dim FRM As New Form7 FRM.MdiParent = Me FRM.Show() End Sub Private Sub ToolStripButton3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click Dim FRM As New Form8 FRM.MdiParent = Me FRM.Show() End Sub Private Sub ToolStripButton4_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click Dim FRM As New Form9 FRM.MdiParent = Me FRM.Show() End Sub Private Sub SALIRToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIRToolStripMenuItem.Click Me.Close() End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13813 8-

FUNCIONAMIENTO

Manual de Visual Basic Parte I 2013

SELECCIONANDO BAOS DEL INCA:

SELECCIONANDO COMIDAS:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

13913 9-

Manual de Visual Basic Parte I 2013

SELECCIONANDO IGLESIAS:

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14014 0-

SELECCIONANDO MSICA:

Manual de Visual Basic Parte I 2013

SALIENDO

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14114 1-

MOVIMIENTOS DE LAS PIEZAS DEL AJEDREZ DISEO DEL TABLERO DE AJEDREZ

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14214 2-

Manual de Visual Basic Parte I 2013


CDIGO: DIBUJANDO EL TABLERO COMPLETO CON TODAS LAS PIEZAS EN SU LUGAR

Public Class Form1 Dim c_actual, c_nuevo As PictureBox Dim fa, ca, fn, cn As Integer 'DIBUJANDO EL TABLERO COMPLETO CON TODAS LAS PIEZAS EN SU LUGAR Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Colocando las piezas negras en sus respectivos lugares c1.Image = Image.FromFile("Torren.png") c3.Image = Image.FromFile("alfiln.png") c2.Image = Image.FromFile("caballon.png") c4.Image = Image.FromFile("reyn.png") c5.Image = Image.FromFile("reynan.png") c9.Image = Image.FromFile("peonn.png") c8.Image = Image.FromFile("Torren.png") c6.Image = Image.FromFile("alfiln.png") c7.Image = Image.FromFile("caballon.png") c10.Image = Image.FromFile("peonn.png") c11.Image = Image.FromFile("peonn.png") c12.Image = Image.FromFile("peonn.png") c13.Image = Image.FromFile("peonn.png") c14.Image = Image.FromFile("peonn.png") c15.Image = Image.FromFile("peonn.png") c16.Image = Image.FromFile("peonn.png") 'Colocando las piezas blancas en sus respectivos lugares c57.Image = Image.FromFile("torreb.png") c58.Image = Image.FromFile("alfilb.png") c59.Image = Image.FromFile("caballob.png") c60.Image = Image.FromFile("reyb.png") c61.Image = Image.FromFile("reinab.png") c49.Image = Image.FromFile("peonb.png") c64.Image = Image.FromFile("Torreb.png") c63.Image = Image.FromFile("alfilb.png") c62.Image = Image.FromFile("caballob.png") c50.Image = Image.FromFile("peonb.png") c51.Image = Image.FromFile("peonb.png") c52.Image = Image.FromFile("peonb.png") c53.Image = Image.FromFile("peonb.png") c54.Image = Image.FromFile("peonb.png") c55.Image = Image.FromFile("peonb.png") c56.Image = Image.FromFile("peonb.png") c_actual = c1 End Sub

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14314 3-

LLAMANDO A LAS FUNCIONES DE LOS MOVIMIENTOS DE LAS PIEZAS

Manual de Visual Basic Parte I 2013

Private Sub c8_Click(sender As System.Object, e As System.EventArgs) Handles c8.Click, c1.Click, c2.Click, c3.Click, c4.Click, c5.Click, c6.Click, c7.Click, c9.Click, c10.Click, c11.Click, c12.Click, c13.Click, c14.Click, c15.Click, c16.Click, c17.Click, c18.Click, c19.Click, c20.Click, c21.Click, c22.Click, c23.Click, c24.Click, c25.Click, c26.Click, c27.Click, c28.Click, c29.Click, c30.Click, c31.Click, c32.Click, c33.Click, c34.Click, c35.Click, c36.Click, c37.Click, c38.Click, c39.Click, c40.Click, c41.Click, c42.Click, c43.Click, c44.Click, c45.Click, c46.Click, c47.Click, c48.Click, c49.Click, c50.Click, c51.Click, c52.Click, c53.Click, c54.Click, c55.Click, c56.Click, c57.Click, c58.Click, c59.Click, c60.Click, c61.Click, c62.Click, c63.Click, c64.Click c_nuevo = sender If c_actual.Tag <> c_nuevo.Tag Then fa = Microsoft.VisualBasic.Left(c_actual.Tag, 1) ca = Microsoft.VisualBasic.Right(c_actual.Tag, 1) fn = Microsoft.VisualBasic.Left(c_nuevo.Tag, 1) cn = Microsoft.VisualBasic.Right(c_nuevo.Tag, 1) Select Case (ListBox1.SelectedIndex) Case 0 mover_torre() Case 1 mover_alfil() Case 2 mover_caballo() Case 3 mover_rey() Case 4 mover_reina() Case 5 mover_peon() End Select Else MessageBox.Show("Hey estas en la misma celda!!!!!") EL CDIGO DE LAS FUNCIONES DE LOS MOVIMIENTOS DE CADA PIEZA DE AJEDREZ SON: End If End Sub

TORRE

' MOVIMIENTO DE LA TORRE Sub mover_torre() If (fa = fn) Or (ca = cn) Then c_nuevo.Image = c_actual.Image c_actual.Image = Nothing c_actual = c_nuevo Else MessageBox.Show("Movimiento incorrecto!!!") End If End Sub

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14414 4-

Manual de Visual Basic Parte I 2013


ALFIL
' MOVIMIENTO DEL ALFIL Sub mover_alfil() If (Math.Abs(fa - fn) = Math.Abs(ca - cn)) Then c_nuevo.Image = c_actual.Image c_actual.Image = Nothing c_actual = c_nuevo Else MessageBox.Show("Movimiento incorrecto!!!") End If End Sub

REYNA

' MOVIMIENTO DE LA REINA Sub mover_reina() If (Math.Abs(fa - fn) = Math.Abs(ca - cn)) Or (fa = fn) Or (ca = cn) Then c_nuevo.Image = c_actual.Image c_actual.Image = Nothing c_actual = c_nuevo Else MessageBox.Show("Movimiento incorrecto!!!") End If End Sub

CABALLO
' MOVIMIENTO DEL CABALLO Sub mover_caballo() If (Math.Abs(fa - fn) = 2 And Math.Abs(ca - cn) = 1) Or (Math.Abs(fa - fn) = 1 And Math.Abs(ca - cn) = 2) Then c_nuevo.Image = c_actual.Image c_actual.Image = Nothing c_actual = c_nuevo Else MessageBox.Show("Movimiento incorrecto!!!") End If End Sub

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14514 5-

Manual de Visual Basic Parte I 2013


REY
' MOVIMIENTO DEL REY Sub mover_rey() If (Math.Abs(fa - fn) <= 1 And Math.Abs(ca - cn) <= 1) Or ((fa - fn) = 1) Or ((ca - cn) = 1) Then c_nuevo.Image = c_actual.Image c_actual.Image = Nothing c_actual = c_nuevo Else MessageBox.Show("Movimiento incorrecto!!!") End If End Sub

PEN

' MOVIMIENTO DEL PEN Sub mover_peon() If ((fn - fa) = 1) And ((ca = cn)) Then c_nuevo.Image = c_actual.Image c_actual.Image = Nothing c_actual = c_nuevo Else MessageBox.Show("Movimiento incorrecto!!!") End If End Sub

ASIGNANDO LAS IMGENES DE LAS PIEZAS DE ACUERDO A CADA CASO:

Private Sub ListBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ListBox1.SelectedIndexChanged Select Case ListBox1.SelectedIndex Case 0 c_actual.Image = Image.FromFile("Torren.png") Case 1 c_actual.Image = Image.FromFile("alfiln.png") Case 2 c_actual.Image = Image.FromFile("caballon.png") Case 3 c_actual.Image = Image.FromFile("reyn.png") Case 4 c_actual.Image = Image.FromFile("reynan.png") Case 5 c_actual.Image = Image.FromFile("peonn.png") End Select End Sub End Class

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14614 6-

FUNCIONAMIENTO

Manual de Visual Basic Parte I 2013

CUANDO SE HACE CLIC EN LA MISMA CELDA DONDE EST LA PIEZA A MOVER SQLE UN MENSAJE DE ATENCIN HEY ESTS EN LA MISMA CELDA!!!!!

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14714 7-

SI EL MOVIMIENTO QUE SE HACE NO CORRESPONDE CON LOS MOVIMIENTOS PROPIOS DE LA PIEZA SELECCIONADA SALE UN MENSAJE DE MOVIMIENTO INCORRECTO

Manual de Visual Basic Parte I 2013

MOVER COMO TORRE

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14814 8-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

14914 9-

Manual de Visual Basic Parte I 2013


MOVER COMO ALFIL

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

15015 0-

Manual de Visual Basic Parte I 2013

MOVER COMO CABALLO

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

15115 1-

Manual de Visual Basic Parte I 2013

MOVER COMO REY

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

15215 2-

Manual de Visual Basic Parte I 2013

MOVER COMO REYNA

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

15315 3-

Manual de Visual Basic Parte I 2013

MOVER COMO PEN

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

15415 4-

Manual de Visual Basic Parte I 2013

Robert Bautista Echevarra |

PROGRAMACIN DISTRIBUIDA

15515 5-

Você também pode gostar