Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Los ejemplos que se desarrollan a continuacin estn escritos para Visual Basic 6.0.
Para adaptarlos a Visual Studio.Net y posteriores, se deben considerar algunos
puntos como los siguientes:
Antes Ahora
Command1 Button1
Text1 TextBox1
Check1 CheckBox1
Frame1 GroupBox1
Picture1 PictureBox1
Option1 RadioButton1
TextBox1.text = Valor
Label1.Text = Valor (Desaparece la propiedad Caption de los controles).
Los mtodos de los objetos han cambiado; sus parmetros se deben escribir
dentro de los parntesis, tal como las funciones predeterminadas, por ejm:
Antes Ahora
Text1.SetFocus TextBox1.Focus()
(Atrae el cursor a la caja de texto1)
Text1.Cls TextBox1.Clear()
(Borra el contenido de la caja de texto1)
(Es equivalente a: TextBox1.Text = "")
Option Explicit
Dim prof, WOB, WUdc, Densidad, ODdc, IDdc, XpuntoN As Single
WUdc = Val(Text2)
Densidad = Val(Text3)
ODdc = Val(Text4)
IDdc = Val(Text5)
WOB = Val(Text6)
End Sub
Option Explicit
Private Sub AadirNuevoElemento_Click()
Dim NuevoElemento As String
NuevoElemento = InputBox("Introducir Frutas", "Nueva fruta")
If Len(Trim(NuevoElemento)) > 0 Then
ComboFrutas.AddItem NuevoElemento
End If
End Sub
Text1 = ""
End If
End Sub
3) Planilla de pago
Uso de Combo Box
Option Explicit
Dim PagoHora, Horas, TotalPago As Single
Dim N As Integer
Private Sub Combo1_Click()
N = Combo1.ListIndex 'Almacena el ndice de la opcin seleccionada
Select Case N
Case 0
PagoHora = 15
LabelPagoHora = PagoHora
Case 1
PagoHora = 10
LabelPagoHora = PagoHora
Case 2
PagoHora = 5
LabelPagoHora = PagoHora
End Select
If Trim(TextHorasTrabajo) = "" Then
TextHorasTrabajo.SetFocus
Else
TotalPago = Format((Horas * PagoHora), "###,##0.00")
3
Ejercicios en Visual Basic 6.0
LabelTotalPago = TotalPago
End If
End Sub
4
Ejercicios en Visual Basic 6.0
Option Explicit
Dim PrecioComp, PrecioImp, SubTotal, Descuento, Total As Single
Dim N As Integer 'Almacenar el ndice de cada elemento
5
Ejercicios en Visual Basic 6.0
PrecioComp = 850
LabPrecioComputadora = PrecioComp
Case 1
PrecioComp = 700
LabPrecioComputadora = PrecioComp
Case 2
PrecioComp = 600
LabPrecioComputadora = PrecioComp
End Select
End Sub
Text5 = ""
Command1.Enabled = False
Command2.Enabled = False
Text1.SetFocus
End Sub
Function Mayuscula(V)
If (V >= 65 And V <= 90) Then
Mayuscula = True
Else
Mayuscula = False
End If
End Function
Function Minuscula(V)
If (V >= 97 And V <= 122) Then
Minuscula = True
Else
Minuscula = False
End If
End Function
Function Numero(V)
If (V >= 40 And V <= 57) Then
Numero = True
Else
Numero = False
End If
End Function
Function Especial(V)
If V = 13 Or V = 32 Or V = 8 Or V = 255 Or V = 233 Or V = 237 Or V = 243 Or V =
250 Or V = 241 Or V = 209 Then
Especial = True
Else
Especial = False
End If
End Function
Function Ingresados()
If Trim(Text1) <> "" And IsDate(Text2) And Trim(Text3) <> "" And Trim(Text4) <> ""
And Trim(Text5) <> "" Then
Command1.Enabled = True
Command2.Enabled = True
Else
Command1.Enabled = False
7
Ejercicios en Visual Basic 6.0
Command2.Enabled = False
End If
End Function
8
Ejercicios en Visual Basic 6.0
9
Ejercicios en Visual Basic 6.0
6) Contadores y acumuladores
10
Ejercicios en Visual Basic 6.0
Option Explicit
Dim cd As Integer 'Cuenta los depsitos
Dim Saldo As Single
'Botn OK:
Private Sub Command1_Click()
Dim Deposito As Single
Deposito = Val(Text2)
Saldo = Saldo + Deposito 'Calcula el saldo
cd = cd + 1 'Cuenta el nmero de depsitos realiz.
Label5 = cd
Label6 = Saldo
Text2 = "" 'Borra solamente el depsito
Text2.SetFocus
End Sub
11
Ejercicios en Visual Basic 6.0
Option Explicit
Dim Prof(), Azimut(), Tramo(), AngDesv() As Single
Dim I, N As Integer
Dim Rumbo, TVDparc, TVDacum As Single
Rumbo = Azimut(I)
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "NE"
Case 90:
Rumbo = 0
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "E"
Case Is < 180:
Rumbo = 180 - Azimut(I)
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "SE"
Case 180:
Rumbo = 0
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "S"
Case Is < 270:
Rumbo = Azimut(I) - 180
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "SW"
Case 270:
Rumbo = 0
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "W"
Case Is < 360:
Rumbo = 360 - Azimut(I)
MSFlexGrid1.TextMatrix(I, 5) = Rumbo
MSFlexGrid1.TextMatrix(I, 6) = "NW"
End Select
Next I
13
Ejercicios en Visual Basic 6.0
Next I
End Sub
End Sub
14
Ejercicios en Visual Basic 6.0
For I = 1 To N
Intervalo(I) = ProfM(I) - ProfM(I - 1)
x = Intervalo(I) * Sin(AngD(I))
y = Intervalo(I) * Cos(AngD(I))
PHV = PHV + x: PVV = PVV + y
'Print I, ProfM(I), AngD(I), Intervalo(I), x, y, PHV, PVV
MSFlexGrid1.TextMatrix(I, 0) = I
MSFlexGrid1.TextMatrix(I, 1) = ProfM(I)
MSFlexGrid1.TextMatrix(I, 2) = AngD(I)
MSFlexGrid1.TextMatrix(I, 3) = Intervalo(I)
MSFlexGrid1.TextMatrix(I, 4) = x
MSFlexGrid1.TextMatrix(I, 5) = y
MSFlexGrid1.TextMatrix(I, 6) = PHV
MSFlexGrid1.TextMatrix(I, 7) = PVV
Next I
End Sub
Sub LimpiarDatos()
For I = 1 To N
MSFlexGrid1.TextMatrix(I, 0) = ""
MSFlexGrid1.TextMatrix(I, 1) = ""
MSFlexGrid1.TextMatrix(I, 2) = ""
MSFlexGrid1.TextMatrix(I, 3) = ""
MSFlexGrid1.TextMatrix(I, 4) = ""
MSFlexGrid1.TextMatrix(I, 5) = ""
MSFlexGrid1.TextMatrix(I, 6) = ""
MSFlexGrid1.TextMatrix(I, 7) = ""
Next I
End Sub
9) Planilla de pago
Con ElseIf
15
Ejercicios en Visual Basic 6.0
Option Explicit
Dim Nombre, Categoria As String
Dim Antiguedad As Byte
Dim TotalG, TotalD, LiquidoP As Single
Dim BonoC, BonoA As Single
16
Ejercicios en Visual Basic 6.0
LabelTotalGanado.Caption = TotalG
TotalD = TotalG * (25.5 / 100)
LabelTotalDesc.Caption = TotalD
LiquidoP = TotalG - TotalD
LabelLiquidoPagable.Caption = LiquidoP
End Sub
17
Ejercicios en Visual Basic 6.0
Option Explicit
Dim Numero As Integer
Dim F As Long
Option Explicit
Dim Dia As Byte
19
Ejercicios en Visual Basic 6.0
End Sub
Option Explicit
Dim Nombre As String
Dim N1, N2, N3, Prom, Asistencia As Single
End Sub
20
Ejercicios en Visual Basic 6.0
Sub LimpiarDatos()
Text1 = ""
Text2 = ""
Text3 = ""
Text4 = ""
Text5 = ""
Label6 = ""
Label7 = ""
Text1.SetFocus
End Sub
If Text1 = 2 Then
Label2 = "Martes"
End If
If Text1 = 3 Then
Label2 = "Miercoles"
End If
21
Ejercicios en Visual Basic 6.0
If Text1 = 4 Then
Label2 = "Jueves"
End If
If Text1 = 5 Then
Label2 = "Viernes"
End If
If Text1 = 6 Then
Label2 = "Sabado"
End If
If Text1 = 7 Then
Label2 = "Domingo"
End If
Option Explicit
Dim Porosidad As Single
Private Sub Command1_Click()
Porosidad = Val(Text1)
If Porosidad <= 5 Then
Label2.Caption = "Porosidad baja"
Else
Label2 = "porosidad alta"
End If
End Sub
22
Ejercicios en Visual Basic 6.0
Option Explicit
Dim Costo(5) As Single
Dim Precio, Descuento, Total As Single
Dim N As Integer 'Variable que contiene el ndice de cada elmento
23
Ejercicios en Visual Basic 6.0
Costo(1) = 70
Costo(2) = 120
Costo(3) = 30
Costo(4) = 80
End Sub
24
Ejercicios en Visual Basic 6.0
Option Explicit
Dim I, N As Integer
25
Ejercicios en Visual Basic 6.0
Option Explicit
Dim M() As Integer
Dim Fila, Columna As Integer
Dim I, J As Integer
Dim Suma As Integer
26
Ejercicios en Visual Basic 6.0
End
End Sub
Option Explicit
Dim N, I As Integer
Dim Prof(), Angulo(), Tramo, ProfVV, DesvH As Single
Next I
End Sub
LimpiarDatos
End Sub
Sub LimpiarDatos()
Text1 = ""
'MSFlexGrid1.Rows = 2
Text1.SetFocus
For I = 1 To N
MSFlexGrid1.TextMatrix(I, 0) = ""
MSFlexGrid1.TextMatrix(I, 1) = ""
MSFlexGrid1.TextMatrix(I, 2) = ""
MSFlexGrid1.TextMatrix(I, 3) = ""
MSFlexGrid1.TextMatrix(I, 4) = ""
MSFlexGrid1.TextMatrix(I, 5) = ""
Next I
End Sub
28
Ejercicios en Visual Basic 6.0
End
End Sub
Text3.Font.Italic = True
Else
Text3.Font.Italic = False
End If
End Sub
End Sub
30
Ejercicios en Visual Basic 6.0
32
Ejercicios en Visual Basic 6.0
Option Explicit
Dim prof(1 To 5), grad(1 To 5), presion(1 To 5) As Single
End Sub
33
Ejercicios en Visual Basic 6.0
Option Explicit
Dim Base, Altura, LadoC As Single
'La funcin Hipotenusa recibe los valores Base y Altura y los copia
'en las variable A y B como dato de tipo Single.
Function Hipotenusa(A, B) As Single
'La funcin Hipotenusa realiza el clculo utilizando los valores
'copiados en las variables A y B.
Hipotenusa = Sqr(A * A + B * B)
End Function
34
Ejercicios en Visual Basic 6.0
Option Explicit
Dim SumaY, SumaX2, SumaXY, SumaX, A, m As Single
Dim I, N As Byte
Dim Y(), X() As Single
End Sub
For I = 1 To N
Y(I) = Val(InputBox("Introducir Y(i)", "Inroducir datos"))
X(I) = Val(InputBox("Introducir X(i)", "Inroducir datos"))
Next I
End Sub
35
Ejercicios en Visual Basic 6.0
End Sub
Option Explicit
Dim Prof(), Densidad, Presion As Single
Dim I, N As Integer 'Contador de las profundidades
'En este programa se introducen las profundidades (crecientes) para el calculo
'de presiones. La densidad variara entre 8 y 10 a intervalos de 0.5.
'N representa la cantidad de datos de profundidades, para construir la tabla
'de presiones respecto a Prof vs Densidad.
ReDim Prof(N)
Print "Prof", "d=8", "d=8.5", "d=9", "d=9.5", "d=10" 'Se imprimen los titulos
Print
"________________________________________________________________"
For I = 1 To N
Prof(I) = Val(InputBox("Introducir Prof" + Str(I) + ":", "Introducir datos"))
Print Prof(I), 'La coma hace que se impriman los datos siguietes en esta linea
For Densidad = 8 To 10 Step 0.5
Presion = 0.052 * Densidad * Prof(I)
Print Presion, 'La como hace que se impriman los datos de presion
seguidamente
Next Densidad
Print 'Inserta una nueva linea para imprimir la siguiente fila de P
Next I
End Sub
36
Ejercicios en Visual Basic 6.0
37
Ejercicios en Visual Basic 6.0
Sub LimpiarDatos()
Text1 = ""
Text2 = ""
Text1.SetFocus
End Sub
38
Ejercicios en Visual Basic 6.0
FormFracciones7.Show
ElseIf Option4 Then
FormOpcionCalculo.Hide
FormFracciones10.Show
Else
End If
End Sub
40