Поскольку в FastReport нет StringReplace
, я сделал бы это из кода Delphi.Можно как-то импортировать функции, но мне кажется, это лучше организовано.Обратите внимание, что в этом первом примере я предполагаю, что Memo1
существует (в противном случае вы получите нарушение доступа).
procedure TForm1.Button1Click(Sender: TObject);
var
Memo: TfrxMemoView;
begin
Memo := frxReport1.FindObject('Memo1') as TfrxMemoView;
Memo.Text := StringReplace(Memo.Text, '%my_str%', 'new string', [rfReplaceAll]);
frxReport1.ShowReport;
end;
Если вы не уверены в названии или типе компонента, вам следует использовать что-то вродеэто:
procedure TForm1.Button2Click(Sender: TObject);
var
Memo: TfrxMemoView;
Component: TfrxComponent;
begin
Component := frxReport1.FindObject('Memo1');
if Component is TfrxMemoView then
begin
Memo := Component as TfrxMemoView;
Memo.Text := StringReplace(Memo.Text, '%my_str%', 'new string', [rfReplaceAll]);
frxReport1.ShowReport;
end;
end;