Загрузка картинок из файлов

отредактировано 03:42 Раздел: FastReport 4.0
Здравствуйте.
Возникла необходимость загружать картинки из файлов в коде при формировании отчёта. Нашёл одну старую темку - http://fast-report.com/ru/forum/index.php?...1&hl=TImage. Всё описанное там работает. Но есть маленькое но - у меня отчёт строится на основе датасета, одно из полей которого является ссылкой на файл изображения. Соответственно, при таком подходе, у меня получается что все картинки заменяются последней. Подскажите, пожалуйста, как бы мне загружать картинки таким образом, чтобы не заменять все предыдущие?

Куски кода.

Динамическое создание TfrxPictureView:
....
  frxReport1.Clear;
  Page:=TfrxReportPage.Create(frxReport1);
  Page.Parent:=frxReport1;
  b:=TfrxMasterData.Create(Page);
  b.Dataset := frxDBDataset;
  b.Stretched:=true;
  b.SetBounds(0,0,20,20);
  bh:=0;
  bl:=20;
  pv:=TfrxPictureView.Create(b);
  pv.Name:='iSlide';
.....

Тело обработчика frxReport1BeforePrint:
procedure TForm1.frxReport1BeforePrint(Sender: TfrxReportComponent);
var
  iSlide: TfrxPictureView;
  S: string;
begin
  if Sender.Name='iSlide' then
  begin
    iSlide:=TfrxPictureView(Sender);
    if assigned(iSlide) then
    begin
      //достать имя слайда
      S:='D:\VideoSlides\20090226\4\'+UniQuery1.FieldByName('Slide').AsString+'.jpg';
      if FileExists(S) then
        iSlide.Picture.LoadFromFile(s);
    end;  
  end;
end;

В общем, подскажите, пожалуйста, что я делаю не так?

Комментарии

  • отредактировано 03:42
    Обнаружил, что отчасти мне помогает решить проблему свойство FileLink. Отчасти потому, что иногда картинки берутся не из файлов, а из TMemoryStream. Я, конечно, не против их сохранять во временные файлы, но есть ли способ работать с ними так?

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.