Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-11-2023
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 227
Poder: 14
darkamerico Va por buen camino
Red face Usar el componente cxImageSlider desde campos BLOB en Absolute Database

Saludos amigos,

Esta es mi Unidad:

Código Delphi [-]
unit uMain;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, DB, cxGraphics, cxControls,
  cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinBlack, dxSkinBlue,
  dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide,
  dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy,
  dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian,
  dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
  dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
  dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
  dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
  dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray,
  dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark,
  dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
  dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
  dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinsDefaultPainters,
  dxSkinValentine, dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark,
  dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint,
  dxSkinXmas2008Blue, Vcl.StdCtrls, dxImageSlider, dxGDIPlusClasses, ABSMain,
  cxClasses;

type
  TForm1 = class(TForm)
    dxImageSlider1: TdxImageSlider;
    Button1: TButton;
    DB: TABSDatabase;
    q_Imagenes: TABSQuery;
    cxImageCollection1: TcxImageCollection;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    procedure CargarImagenesDesdeBLOB(dxImageSlider: TDxImageSlider; dataset: TAbsQuery);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CargarImagenesDesdeBLOB(dxImageSlider: TDxImageSlider; dataset: TAbsQuery);
var
  imagen: TdxSmartImage;
  stream: TMemoryStream;
  blob:TBlobField;
  ImgItem: TcxImageCollectionItem;
  i:byte;
begin
  //dxImageSlider.Images.BeginUpdate;
  try
    dataset.Close;
    dataset.Open;
    dataset.First;
    i:=0;
    while not dataset.Eof do
    begin
      stream := TMemoryStream.Create;
      try
        blob:=TBlobField(dataset.FieldByName('sw_screen1'));
        blob.SaveToStream(stream);
        stream.Position := 0;
        ImgItem := TcxImageCollectionItem.Create(Self);
        ImgItem.Picture.LoadFromStream(Stream);

        dxImageSlider.Images.Items[i]:=ImgItem;

        Inc(i);
      finally
        stream.Free;
      end;
      dataset.Next;
    end;
  finally
    //dxImageSlider.Images.EndUpdate;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  CargarImagenesDesdeBLOB(dxImageSlider1, q_Imagenes);
end;

end.

Obtengo error dentro de la funcion CargarImagenesDesdeBLOB() en la línea ImgItem.Picture.LoadFromStream(Stream);
El mensaje de error es: Unsupported stream format.

La tabla de Absolute Database tiene campos BLOB con imágenes JPG en 4 campos: sw_screen1, sw_screen2, sw_screen3, sw_screen4.

Lo que necesito es que esos 4 imagenes se puedan ver en un componente DxImageSlider.

Agradeceré mucho su ayuda.


Abrazo
Responder Con Cita
  #2  
Antiguo 24-11-2023
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Ya se que es muy básico pero ¿has probado a añadir la unit VCL.Imaging.jpeg al uses?
Delphi no es capaz de tratar el forma si no encuentra esa unit (o la equivalente a tu versión de Delphi).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 24-11-2023
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 227
Poder: 14
darkamerico Va por buen camino
Red face Gracias por responder

Estimado Neftalí, antes que nada, agradecer tu respuesta, añadí la uses que mencionas, pero el problema persiste, me ayudaría mucho si usted o alguien que lea este post tuviera un código funcional que realizara este trabajo, ya que como es la primera vez que intento usar este componente dxImageSlider, es probable que no lo esté usando como debe ser.

Un Abrazo

Americo
Responder Con Cita
  #4  
Antiguo 27-11-2023
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Yo estoy cargando una imagen JPG desde disco y esta línea me funciona correctamente (pruébalo):
Código Delphi [-]
ImgItem.Picture.LoadFromStream(Stream);

Así que parece que la carga no es el problema, tal vez la forma en que estás guardando las imagenes en la Base de Datos.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



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
Usar Default Character Set con Create Database bulc Firebird e Interbase 3 14-04-2013 21:05:12
TClienDataSet Problemas con Campos Blob y Campos Calculados LEVV Conexión con bases de datos 2 11-05-2012 01:25:43
pregunta sobre Absolute Database waly2k1 Conexión con bases de datos 7 22-09-2007 08:23:15
Almacenar y usar consultas vistas y procedimientos en campos blob sitrico Firebird e Interbase 6 07-09-2007 05:19:05
Problema ruta componente database Gwa Conexión con bases de datos 4 15-03-2005 20:22:36


La franja horaria es GMT +2. Ahora son las 08:21:15.


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