我在使用fastreport 打印图片过程中,出了点问题。
首先我从数据库中读出考生的考生号。图片是以考生号命名的,然后加上文件路径。存到TStringlist里,通过frxReport1GetValue把参数传到报表里的一个Memo,在这个Memo的afterprint时间里 读出Memo的值,在picture.loadfromfile()中加载这个图片,最终Memo的显示的路径名和考生的信息一致,但是picture中的图片信息不一致,在第一页中没有图片加载,第二页加载的图片是第一页考生的图片,以后依次类推。就图片加载发生了错位。附源码:
procedure TForm1.Button1Click(Sender: TObject);
begin
  //提取文件名
  filename:= TStringList.Create;
  with ADOTable1 do
  begin
    First;
    while not Eof do
    begin
      filename.Add(photopath+'T'+fieldbyName('ksh').AsString+'.jpg');
      Next;
    end;
    First;
  end;
  //预览
  frxReport1.ShowReport;
  ADOTable1.open;
end;procedure TForm1.frxReport1GetValue(const VarName: String;
  var Value: Variant);
begin
  if CompareText(VarName, 'pictures') = 0 then
    Value := filename[ADOTable1.RecNo-1];
end;