AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Verantwortlichkeiten / Wer kümmert sich um Freigeben
Thema durchsuchen
Ansicht
Themen-Optionen

Verantwortlichkeiten / Wer kümmert sich um Freigeben

Ein Thema von Jonas Shinaniganz · begonnen am 26. Jul 2012 · letzter Beitrag vom 26. Jul 2012
 
Benutzerbild von Jonas Shinaniganz
Jonas Shinaniganz

Registriert seit: 30. Aug 2011
249 Beiträge
 
Delphi XE5 Ultimate
 
#10

AW: Verantwortlichkeiten / Wer kümmert sich um Freigeben

  Alt 26. Jul 2012, 13:30
Lemmy zur sicherheit poste Ich nochmal was Ich implementiert habe, vielleicht hab Ichs ja noch nicht ganz richtig gemacht:

Die API der TReportUnit bietet:

Delphi-Quellcode:
  
  procedure AddBlock(Text : String; Image : TBitmap);
  procedure Generate;
Der AddBlock macht jetzt folgendes:

Delphi-Quellcode:
procedure TReportUnit.AddBlock(Text: String; Image: TBitmap);
var
  Block : TBlock;
begin
  // block erstellen
  Block := TBlock.Create;
  // bild und text KOPIEREN
  Block.FImage.Assign(Image);
  Block.FText := Text;
  // block in Blockliste übernehmen
  FBlocks.Add(Block);
end;
Block.FImage.Assign(Image); ist wohl die wichtige Zeile hierbei.


Und mit FBlocks.OwnsObjects := True; habe Ich eine kompfort Freigabemöglichkeit

und mein code im Aufruft sieht jetzt so aus:

Delphi-Quellcode:
function TTestActionMCOReport.Execute: TActionResult;
var
  ReportUnit : TReportUnit;
  Bitmap1 : TBitmap;
begin
  ReportUnit := TReportUnit.Create;
  ReportUnit.TemplateFile := TTestActionMCOReportParam(Parameter).TemplateFileName;
  ReportUnit.PDFDokumentOutputPath := TTestActionMCOReportParam(Parameter).PDFDokumentOutputPath;

  // Hier müssen die Bilder welche dann auch im Report sein sollen mit AddBlock hinzugefügt werden
  Bitmap1 := TBitmap.Create;
  Bitmap1.LoadFromFile...
// Oder Vielleicht kopiere Ich das Bitmap auch aus einem Stream oder DB oder wie auch immer
  ReportUnit.AddBlock('Hysterese Test 1', Bitmap1);
  Bitmap1.Free; // Erstes Freigeben weil Bild ja jetzt in Reportunit Existent ist

  ReportUnit.Generate;
  ReportUnit.Free;
end;
Die Leiter der Entwicklungsabteilung dreht total am Mausrad!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz