ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Visual Basic Agenda Con Archivos Aleatorio


Enviado por   •  9 de Mayo de 2013  •  2.065 Palabras (9 Páginas)  •  984 Visitas

Página 1 de 9

Agenda muy simple en Visual basic utilizando Ficheros de acceso aleatorio o también denominados Random , para almacenar los datos de los contactos de la Agenda.

Una vista del ejemplo:

Para manipular los datos se utiliza una estructura o UDT que tiene las siguientes variables:

Texto planoImprimir

1. ' Estructura para los datos de los contactos de la agenda

2. Private Type Contacto

3. Nombre As String * 40

4. Apellido As String * 50

5. Telefono As String * 40

6. Mail As String * 70

7. Nota As String * 250

8. End Type

Como se puede ver en la imagen, tiene una opción para buscar un registro y especificar por que campo buscar, ya sea por el nombre del contacto, el Apellido, el telefono o el correo electrónico.

________________________________________

Pasos a seguir para armar el formulario con los controles:

Agregar en un Formulario 6 controles TextBox con los siguiente nombres:

1. txtNombre

2. txtApellido

3. txtTelefono

4. txtMail

5. txtNota

6. txtBuscar

Luego agregar 7 CommandButton con los siguientes nombres:

1. CmdAnterior : Botón para ir al anterior registro

2. cmdSiguiente : Botón para ir al siguiente registro

3. cmdGuardar : Botón para guardar los cambios cuando se seleccionó previamente la opción Nuevo Registro

4. cmdEliminar: Elimina el registro actual

5. cmdNuevo : Añade un nuevo reg

6. cmdBuscar : Para buscar

7. Cmdsalir : Descarga el Form

Ahora, agregar un control ComboBox llamado Combo1. A este combo, establecerle en la propiedad Style el valor 2 ( DropDownList ) y agregarle los siguientes valores en la propiedad List: Nombre, Apellido, Telefono e Mail en ese orden

Nota: Para agregar datos en la propiedad List desde la ventana de propiedades, debes mantener la tecla Ctrl presionada y presionar la tecla Enter para añadir un nuevo dato o Item.

Por último, agregar un control Label llamado lblStatus que servirá para poder mostrar cuando nos desplazamos por los registros, con los botones anterior y siguiente, el número del registro actual y la cantidad de registros que hay en el archivo. Este Label lo puedes situar en la parte inferior del formulario o donde quieras.

Colocar el código fuente en el formulario:

Texto planoImprimir

1. Option Explicit

2.

3. 'Variables

4. '##################################################

5.

6. ' Estructura para los datos de los contactos de la agenda

7. Private Type Contacto

8. Nombre As String * 40

9. Apellido As String * 50

10. Telefono As String * 40

11. Mail As String * 70

12. Nota As String * 250

13. End Type

14.

15. 'Variables para utilizar la estructura anterior

16. Dim Datos As Contacto

17. Dim DatosTemp As Contacto

18.

19. 'Variables para el archivo de los datos de contacto y temporal

20. Dim FileFree As Integer

21. Dim FileTemp As Integer

22.

23. 'Variables para la posición del primer y último registro

24. Dim RegActual As Long

25. Dim RegUltimo As Long

26. ' Variable para la posición Temporal del registro

27. Dim RegActualTemp As Long

28.

29. Dim Pos As Integer, p As Integer

30.

31.

32.

33.

34. '######################################################

35. 'Funciones y procedimientos

36. '######################################################

37.

38.

39.

40. ' Subrutina que guarda los datos en el archivo

41. '#############################################

42.

43. Private Sub GuardarDatos()

44.

45. 'Asignamos los datos de la estructura con el contenido de los textBox

46. With Datos

47.

48. .Nombre = txtNombre.Text

49. .Apellido = txtApellido

50. .Telefono = txtTelefono.Text

51. .Nota = txtNota.Text

52. .Mail = Trim(txtMail)

53.

54. End With

55.

56. 'Escribimos los datos en el archivo y en la posición

57. Put #FileFree, RegActual, Datos

58. End Sub

59.

60. ' Subrutina que Visualiza los datos en los textBox

61. '##################################################

62.

63. Private Sub VisualizarDatos()

64.

65. 'Lee del fichero en el registro posicionado y almacena los datos_ _

66. en la la variable UDT

67. Get #FileFree, RegActual, Datos

68.

69. ' Mostramos los datos en las cajas de texto

70. With Datos

71. txtApellido = Trim(.Apellido)

72. txtNombre = Trim(.Nombre)

73. txtTelefono = Trim(.Telefono)

74. txtMail = Trim(.Mail)

75. txtNota.Text = Trim(.Nota)

76. End With

77.

78. 'Mostramos en el control Label la posición del registro actual _

79. y la cantidad o Total de registros que hay en el archivo

80. lblStatus.Caption = "Registro Actual: " & CStr(RegActual) & vbNewLine _

81. & " Total de registros: " & CStr(RegUltimo)

82.

83. End Sub

84.

85. 'Botón que elimina un registro del archivo

86. '############################################

87.

88. Private Sub cmdEliminar_Click()

89.

90. Pos = RegActual

91.

92. If MsgBox(" Está seguro de eliminar el contacto ? ", vbYesNo) = vbNo Then

93.

94. txtNombre.SetFocus

95.

96. Exit Sub

97. End If

98.

99. ' Verificamos que el archivo temporal no exista, si existe se elimina

100. If Dir("Temporal.tmp") = "Temporal.tmp" Then

101. Kill "Temporal.tmp"

102. End If

103.

104. FileTemp = FreeFile

105. 'Abrimos y creamos un nuevo fichero temporal

106. Open "Temporal.tmp" For Random As FileTemp Len

...

Descargar como (para miembros actualizados)  txt (12 Kb)  
Leer 8 páginas más »
Disponible sólo en Clubensayos.com