procedure TForm_QTOrder1.ShowPic;
var
vStr:TADOBlobStream;
vTmp,vPicType:string;
vtmpPath:PChar;
begin
inherited;
Image1.Picture.Graphic:=nil; //清空图像控件里的图像
vstr:=TADOBlobStream.Create(TBlobField(QueryBill4.FieldByName('Pics')),bmRead); //创建BlobStream,设定Pics字段为Blob字段,并设为只读
if vstr.Size=0 then //Stream的大小为0说明没有图像,退出
begin
exit;
end;
vPicType:=CheckImgType(vStr); //判断图像类型
vstr.Position:=0; //指针移动到开头
GetMem(vtmpPath,MAX_PATH); //获取临时目录
GetTempPath(MAX_PATH,vtmpPath);//获取临时目录
vTmp:=StrPas(vtmpPath); //获取临时目录
FreeMem(vtmpPath); //释放变量
vTmp:=vTmp+PubData1.GetGUIDString+'.'+vPicType; //将临时目录和文件名合成全路径文件名
TBlobField(QueryBill4.FieldByName('Pics')).SaveToFile(vTmp); //从Blob字段读取图像数据保存到临时文件
Image1.Picture.LoadFromFile(vTmp); //图像控件读取临时文件
DeleteFile(vTmp); //删除临时文件
Application.ProcessMessages;
end;