Hier etwas Code um auf ReportBuilder Controls zuzugreifen:
Delphi-Quellcode:
procedure MachwasMitReportBand(Band: TppCustomBand);
var
i: Integer;
custom_text: TppCustomText;
custom_image : TppCustomImage;
begin
with Band do
begin
for i := 0 to ObjectCount - 1 do
begin
if Objects[i] is TppCustomText then
begin
custom_text := TppCustomText(Objects[i]);
custom_text.Caption := 'Name: '+ custom_text.Name;
end
else if Objects[i] is TppCustomImage then
begin
custom_image := TppCustomImage(Objects[i]);
custom_image.Picture.Assign(nil);
end;
end;
end;
end;
MachwasMitReportBand(ppReport1.HeaderBand);
PS:
Wobei man sich die Frage stellen müsste,
ob dein Ansatz überhaupt richtig ist.
Man könnte nämlich die Texte, und die Images auch in ein Memory-Dataset schreiben.
Anstatt nun zigmal immer wieder einen Text und ein Image auf den Report zu platzieren,
bräuchte der Benutzer dies nur einmal zu tun.
Ausserdem muss er angeben, wie viele Spalten er haben möchte.
Dann wird das Detailband mit dem Memory-Dataset verknüpft und wenn es sein muss können so auch 10000 Bilder gedruckt werden.