Hola frandigo77.
No conozco el componente
cxDBImage, pero creo que deberías trabajar directamente sobre el campo no sobre el componente, ejemplo:
Código Delphi
[-]uses Jpeg;
procedure TForm1.btnLoadImageClick(Sender: TObject);
function IsJPEGFile(const FileName: string): Boolean;
var
buf: array [0..3] of Byte;
FS : TStream;
begin
FS := TFileStream.Create(FileName, fmOpenRead);
try
FS.Read(buf, SizeOf(buf));
Result:= (buf[0]=$FF) and (buf[1]=$D8) and (buf[2]=$FF) and (buf[3]=$E0);
finally
FS.Free;
end;
end;
var
Jpg : TJPEGImage;
Pic : TPicture;
begin
if OpenPictureDialog1.Execute then
begin
if IsJPEGFile(OpenPictureDialog1.FileName) then
begin
Jpg := TJPEGImage.Create;
Pic := TPicture.Create;
try
Jpg.LoadFromFile(OpenPictureDialog1.FileName);
Pic.Bitmap.Width := Jpg.Width;
Pic.Bitmap.Height := Jpg.Height;
Pic.Bitmap.Assign(jpg);
ClientDataSet1.Edit;
TBlobField(ClientDataSet1.FieldByName('IMAGE')).Assign(Pic);
ClientDataSet1.Post;
finally
Jpg.Free;
Pic.Free;
end;
end
else raise Exception.Create('El archivo no contiene una imágen .JPG válida');
end;
end;
Saludos
