我是利用delphi调用Oracle数据库中的blob字段来显示在image控件中的。以前写过,调的好好的。现在把哪个拿过来重新写程序,反而不行。
很简单的,利用一个按钮,调用图片,并显示在image中。image控件中属性没有改动一个,改动了好像也没有用。unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBTables, ExtCtrls, StdCtrls, jpeg;type
  TForm1 = class(TForm)
    Database1: TDatabase;
    Button1: TButton;
    Query1: TQuery;
    Image1: TImage;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
  ssql:string;
  mStream:TMemoryStream;
  bl:TBlobField ;
  JpgFile:TjpegImage;
  str_dzjc,str_jkbh:string;
  i:integer;
begin
  mStream:=TMemoryStream.Create ;
  JpgFile:=TjpegImage.Create ;
  Query1.sql.Clear;
  ssql:='select dzjcid,tpxl,tp from syn_bk_picture where dzjcid=''1001'' and tpxl=0';
  Query1.sql.add(ssql);
  try
    Query1.Open;
  except
    exit;
  end;
  bl:=TBlobField(Query1.FieldByName('tp'));//顯示的轉換為BlobFiled並保存至內存流
  bl.SaveToStream(mStream);
  mStream.Position :=0;
  jpgfile.LoadFromStream(MStream);
  Image1.Picture.Assign(JpgFile);
end;