![]() |
Grabar Imagen en Tabla Access
Hola amigos del clubdelphi, se que este tema se ha tratado mucho en los foros pero el asunto es que no he trabajado con imagenes en una base de datos, y buscando encontré el siguiente código:
Al ejecutarlo me invoca la ventana de dónde voy a buscar la imagen, el asunto es que cuando la cargo no se ve en el DBImage, acaso me falta algo? por cierto DBImage esta conectado con el respectivo campo "Logo", utilizo Delphi-7 y Access 2003. Gracias de antemano... |
es mejor que en la BD solo guardes la direccion de la imagen y utilices un componente Image para mostrarla y ya asi es menos problematico y se hace mucho mas lijera tu BD. si necesitas ayuda con eso avisame...:)
|
Asunto
Lo cierto es que no sé como cargarla ni grabarla en la tabla, osea que se pueda ver y consultar...:confused:
|
primero agregas un OpenPictureDialog1, un Imge1, un edit y boton;
en el boton le agregas este codigo: esto es para buscar y mostrar la imagen. para guardarla solo guardas el texto que te parece en el edit1 y para mostrar la imagen desde una consulta te dare un ejemplo: image1.Picture.LoadFromFile(query1.field[0].value); suponiendo que la consulta solo la haces para seleccionar la imagen o desde un DBGRID image1.Picture.LoadFromFile(dbgrid1.Fields[6].asstring); su poniendo que en la posisicion 6 del grid esta la direccion de la imagen este codigo para el grid se lopones en el onclick o en le DblClick |
mira lo que te dice rodrigodeoz en gran parte es cierto, al gbrabar una imagen en tu base de datos con muchos registros esta se puede hacer lenta, sin embargo haveces es nesesario y por ende posible, existen varios metodos aqui en el foro, pero para que no te quieres la cabeza en descubirlos yo te aconsejaria que descargaras y utilizaras el componente imdbjpeg, es como el DBImage solo que este si acepta las imajenes jpg asi com las bmp y aparte agrega la libreria jpeg en los uses y con esto se resolvera tu problema.
suerte |
Gracias
Muchas gracias amigo Rodrigodeoz, ahora si que pude cargar la imagen...:)
|
Siempre mas de lo mismo
Hola Novato, lo tuyo es mas simple de lo que parece. El tema fue architratado en el foro, solo es cuestion de que busques y el hehco de buscar te va a llevar a ver cosas que ni esperabas encontrando asi muchas nuevas ideas. Por eso buscar ante todo es lo fundamental. Por otro lado, que pasa si se borra la imagen, tenemos la direccion pero falta el archivo. Ademas ese sistema no te permite administrar las imagenes. Tambien es cierto que en una base de datos no vas a cargar imagenes porque se torna muy lenta. El punto de equilibrio esta en controlar cuanto pesa la imagen que agregas a tu base de datos. Hay muchos metodos para recortar los bytes de una imagen sin perder demasiada calidad. Para empezar lee este articulo aqui abajo, siempre lo he dicho, el boletin pascal n° 11 ofrece muchas soluciones. Te adelanto que estoy trabajando en un objeto que denominare TADODBImage y te permitira trabajar como cualquier Data_Aware control sin tener que escribir todo ese codigo cada vez que quieras utilizar graficos en la base de datos. Lee ese articulo y despues comenta que te parecio en este mismo hilo.
http://www.latiumsoftware.com/es/pascal/0011.php |
El metodo mas corto...
Código:
Saludos |
La franja horaria es GMT +2. Ahora son las 06:23:16. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi