Передать образ Delphi в FastReport

Я хочу показать изображение в FastReport.

Вот код Delphi:

 img_sick.Picture.LoadFromFile(ExtractFilePath(Application.ExeName) +
      'Pictures/' +  Qry_Search.FieldByName('code_personel').AsString + '.jpg');

Любые идеи были бы хорошы.


person Hamed Kamrava    schedule 23.06.2012    source источник


Ответы (2)


  1. Поместите изображение в форму отчета. Предположим, он будет называться Picture1.

  2. В вашем коде Delphi в методе, в который вы хотите загрузить изображение, добавьте такую ​​строку:

    TfrxPictureView(YourReportObject.FindObject('Picture1')).Picture.LoadFromFile(…)
    

    Свойство Picture - это TPicture, поэтому LoadFromFile - это тот же метод, который вы используете в своем примере. Поэтому просто укажите в качестве аргумента соответствующее имя файла.

Это должно быть сделано до запуска отчета. Если вы хотите загружать изображения в процессе выполнения отчета, возможно, вам стоит попробовать сделать что-то подобное в сценарии отчета. Возможно, я бы определил обработчик OnBeforePrint для объекта Picture1, например:

procedure Picture1OnBeforePrint(Sender: TfrxComponent);
begin
  TfrxPictureView(Sender).Picture.LoadFromFile(…);  // use a reference
          // to the "code_personel" column in the file name expression
          // as appropriate in the context of the report script,
          // like <Qry_Search."code_personel">, perhaps
end;
person Andriy M    schedule 23.06.2012

Ваша проблема в том, что "/" должна быть обратной косой чертой ---> "\"

person Benjamin Weiss    schedule 23.06.2012
comment
Насколько мне известно, прямая косая черта работает на уровне API для операций с именами файлов. - person Leonardo Herrera; 27.06.2012