Visual basic codigos
Hola aquí te dejo un pequeño programa que trabaja ADO sin el CONTROL, puro código.
En -->proyecto -->referencias ... tildas --->Microsoft ActiveX Data Objects 2.0 Library
En -->Proyecto -->Componentes ... tildas ---> Microsoft Common Dialog Control 6.0 (SP3)
En el formulario agregas:...
Tres textbox, un pictureboxd y 8 commandbutton
les pones los siguientescaption:...
------------------------------------------
Command1.caption ="Inicio"
Command2.caption ="Anterior"
Command3.caption ="Siguiente"
Command4.caption ="Final"
Command5.caption ="Nuevo"
Command6.caption ="Borrar"
Command7.caption ="Cargar Imagen"
Command8.caption ="Editar"
------------------------------------------
En la carpeta en la cual pongas el proyecto crea una sub carpeta"imagenes"
------------------------------------------
La base de datos access, deberá tener una tabla denominada "Tabla1" y por lo menos cuatro campos
1 ---> Apellido
2 ---> Nombres
3 ---> Mail
4 ---> Foto
------------------------------------------
Mas abajo te dejo el código del formulario
------------------------------------------------
Pero antes deseo decirte me parece que esta es la mejormanera de manejarse con fotos, es decir, guardando en la base solamente el texto del path con el nombre y la extensión de la imagen, a mas de que las vas nucleando todas en un directorio puntual, y de esta manera la base de datos no se sobredimensiona y funcionará perfectamente con pocos archivos como con una multitud.-
Option Explicit
' Objeto para acceder directamente a la base usando códigoPrivate cnn As ADODB.Connection
' WithEvents permite tener acceso a los a los mismos eventos que con el ADO DataControl
Private WithEvents rst As ADODB.Recordset
'variable para la función -cargar_Imagen-
Private foto As IPictureDisp
'variable que se utiliza en el evento de crear un nuevo registro
Dim nuevo As Boolean
Private Sub Command1_Click()
On Error Resume Next
rst.MoveFirstCall cargar_Imagen(Picture1, rst!foto)
End Sub
Private Sub Command2_Click()
On Error Resume Next
rst.MovePrevious
'Si se sobrepasa el inicio de la base, se mueve el puntero al primer registro
If rst.BOF Then
rst.MoveFirst
End If
Call cargar_Imagen(Picture1, rst!foto)
End Sub
Private Sub Command3_Click()
On Error Resume Next
rst.MoveNext
'Si se sobrepasa el final de la base, se mueveel puntero al ultimo registro
If rst.EOF Then
rst.MoveLast
End If
Call cargar_Imagen(Picture1, rst!foto)
End Sub
Private Sub Command4_Click()
On Error Resume Next
rst.MoveLast
Call cargar_Imagen(Picture1, rst!foto)
End Sub
Private Sub Command5_Click()
On Error Resume Next
'Si se presiona este comando se autoriza un nuevo registro
'Se mueve el foco al text 1
'la variable booleannuevo se pone a True
'Se renombra el caption del comando Nuevo
'Se hace visible el comando -cargar imagen-
If nuevo = False Then
rst.AddNew
Text1.SetFocus
nuevo = True
Command5.Caption = "Grabar nuevo"
Command7.Visible = True
ocultarcontroles False
Else
Command5.Caption = "Nuevo"
Command7.Visible = False
nuevo = False
rst.Update
mostrarcontroles False
End If
End Sub
PrivateSub Command6_Click()
On Error Resume Next
' Elimina el registro actual
rst.Delete
On Error Resume Next
' Mueve el puntero al siguiente registro
rst.MoveNext
' Si no puede mover al siguiente, se posiciona en el primer registro.
If rst.EOF Then
rst.MoveFirst
End If
End Sub
Private Sub Command7_Click()
On Error Resume Next
With CommonDialog1
.DialogTitle = " Seleccionar imagen".Filter = "BMP|*.bmp|JPEG|*.jpeg|GIF|*.gif|JPG|*.jpg|Todos|*.*"
.ShowOpen
If .FileName = "" Then
Exit Sub
Else
'Carga en nombre el path donde se ejecuta el programa, el directorio especificado
'y el nombre y la extensión de la imagen seleccionada.
Dim nombre As String: nombre = App.Path & "\imagenes" & .FileTitle
'Copia la imagen seleccionada en el cuadro de dialogo en el lugar que dice la...
Regístrate para leer el documento completo.