Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #8  
Antiguo 24-03-2011
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 416
Poder: 17
bulc Va por buen camino
Cita:
Empezado por rrf Ver Mensaje
Hola.

Aquí te incluyo 2 ejemplos de código para guardar desde un TIBDataset (campo blob) a un TImage y viceversa.

Son sacados de un programa que hice hace mucho tiempo para practicar y aprender a usarlo y espero que te sean útiles.

El primer ejemplo es para guardar la imagen desde un campo Blob a un TImage y se pone en marcha cuando se cambia de una ficha a otra, por ejemplo, en un DBGrid:

Código Delphi [-]uses Jpeg, ... ; ... procedure TDModule1.DSetAfterScroll(DataSet: TDataSet); var MS1 : TMemoryStream ; JPEG1 : TJPEGImage; begin // Después de moverse x el DataSet (ej. en un DBGRid) // actualiza la información //------------------------------------ //------------------------------- Meter la Imagen al Image1 -------------- try // Vacía la imagen por si esa fila no contiene imagen; pues // de no hacerlo, se vería la imágen de la última ficha que sí tenía imagen Ppal.image1.Picture.Assign ( NIL ) ; MS1 := TMemoryStream.Create ; DSetBlobImag.SaveToStream (MS1) ; MS1.Position := 0 ; if MS1.Size > 0 // Si el campo contiene alguna información then begin JPEG1 := TJpegImage.Create; JPEG1.LoadFromStream( MS1 ); if not JPEG1.Empty // Si tiene contenido, lo copia then Ppal.image1.Picture.Assign ( JPEG1 ) ; end ; finally JPEG1.Free; MS1.Free; end; end;


Este es para guardar la imágen desde el TImage al campo blob:

Código Delphi [-]procedure TEdita_Reg.BConfirmarClick(Sender: TObject); var MS1 : TMemoryStream ; begin //=========== GUARDAR IMAGEN en el campo blob ====================== TRY MS1 := TMemorySTream.create ; if (image1.Picture.Height > 0 ) or // IMAGE1 no está vacía (image1.Picture.Width > 0 ) then begin image1.picture.Graphic.SaveToStream (ms1) ; ms1.Position := 0 ; DModule1.DSetBLOBIMAG.LoadFromStream ( ms1 ) ; end else // IMAGE1 está vacía DModule1.DSetBLOBIMAG.Clear ; FINALLY MS1.free; END ; DModule1.DSet.Post ; DModule1.Transac.CommitRetaining ; end;


El código original lo obtuve buscando mucho en este foro e internet y lo adapté un poco.

Quizás se ajuste a lo que buscas, aunque creo que lo normal es usar los componentes TDBImage que ahorran mucho código porque enlazan directamente con el IBDataset.

Salu2.
Hola. ¿Serviría este código para un campo ADO-Access. No consigo sacar un gráfico de la Tabla y verlo. Intento hacerlo en un TImage, pasando el campo a un TADOBlobStream, para dimensionarlo.
¿Puedes sugerirme algo?
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Guardar Imagen de un TImage num11 Varios 3 19-03-2009 05:52:55
Guardar una Imagen a PDF atrus Gráficos 8 12-08-2008 10:36:03
Guardar imagen franfl Firebird e Interbase 1 29-02-2008 09:02:54
Guardar una imagen en una tabla sexshop_3 Varios 4 09-11-2007 20:01:11
Guardar una imagen en un DB lore Conexión con bases de datos 5 20-03-2007 17:07:48


La franja horaria es GMT +2. Ahora son las 00:00:20.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi