FastReport动态打印图片
报表中经常需要通过数据库中某个字段的内容来加载对应目录中的图片文件来进行显示,FastReport中的PictureView控件不是数据感知控件,无法像Memo控件一样随着字段数据的变化而动态显示数据,要实现此功能,需要在FrxReport控件的BeforePrint中添加如下代码:
//以下为自定义函数
procedure TForm2.LoadPhoto; //此处的TForm2代表form2窗体的函数,可根据实际情况改动
var
S,FileName:String;
begin
S:= trim(form1.adoquery2.FieldByName(''clientcode'').AsString);
FileName:=''photo\'' + S +''.jpg'';
if FileExists(FileName) then //载入photo目录下对应的图片
begin
PV.Picture.LoadFromFile(FileName);
end
else
begin
pv.Picture.LoadFromFile(''photo\black.jpg'');
end;
end;
procedure TForm2.frxReport1BeforePrint(Sender: TfrxReportComponent);
begin
loadphoto; //为自定义函数,其内容如上
end;
更新时间:2011-6-3
|