AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FastReport - Images laden

Ein Thema von Jack and the Juice · begonnen am 5. Sep 2011 · letzter Beitrag vom 8. Sep 2011
Antwort Antwort
Steku

Registriert seit: 12. Mai 2008
186 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#1

AW: FastReport - Images laden

  Alt 5. Sep 2011, 22:17
Hi,

habe vor längerer Zeit nur mal mit der Demo
von FR rumprobiert, kann dir deshalb leider nicht erschöpfend
helfen, aber hast du dir schon mal die Demos von FR
reingezogen. Da sind ziemlich viele Basic-Demos dabei,
die soweit ich mich daran erinnern kann, genau solche Sachen
abdecken. Der entsprechende Beispielreport hieß glaube ich
Bands and Pictures, oder Memo and Pictures, oder...
Sorry weiß es leider nicht mehr genau...

Weiter viel Glück und Gruß,
Steku
  Mit Zitat antworten Zitat
Jack and the Juice

Registriert seit: 15. Jan 2011
Ort: Lübeck
52 Beiträge
 
#2

AW: FastReport - Images laden

  Alt 5. Sep 2011, 22:21
Heyho,

alles klar, besten Dank trotzdem. Ich versuche derzeit da Ganze aufgrund der englischen Dokumentation nachzuvollziehen, welche im Übrigen ziemlich gut ist.
Leider vermisse ich halt genau diesen Punkt, aber vielleicht hat ja doch schonmal jemand damit gearbeitet und kann mir den entscheidenen Hinweis geben
Die Demos schau ich mir trotzdem mal an, eventuell finde ich da ja noch etwas.

Bis dahin, besten Gruß,
jackandthejuice
  Mit Zitat antworten Zitat
Steku

Registriert seit: 12. Mai 2008
186 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

AW: FastReport - Images laden

  Alt 5. Sep 2011, 22:24
Nochmals Hi,

habe mir eben nochmal schnell die compilierte Demo
gezogen.
Das entsprechende Beispiel hieß wirklich "Memos and Pictures"
und ist unter den Basic-Reports zu finden.

Wirklich sehr einfach gehalten, hilft dir aber vielleicht weiter.

Gute Nacht
Steku
  Mit Zitat antworten Zitat
Jack and the Juice

Registriert seit: 15. Jan 2011
Ort: Lübeck
52 Beiträge
 
#4

AW: FastReport - Images laden

  Alt 6. Sep 2011, 09:52
Hallo,

ich hab die Demos von FastReport nochmal durchgeschaut, aber leider noch immer keine Lösung für die Problematik gefunden. Die Demos gehen nur darauf ein, wie Bilder aus der Datenbank geladen werden. Ich möchte jedoch, je nach Wert des Feldes "Land" ein Image auf meinem Report haben. Könnte ich eventuell mit mehreren Bildern arbeiten und per Bedingung die nicht benötigten ausblenden? Nur wie genau setze ich das um? Ich hoffe sehr auf noch einen Denkanstoß ...

Bis dahin, besten Gruß,
jackandthejuice
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.874 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: FastReport - Images laden

  Alt 6. Sep 2011, 10:17
Befinden die Bilder sich in einer Datenbank? Sonst müsstest du den Inhalt per Skript oder manuell setzen
Markus Kinzler
  Mit Zitat antworten Zitat
Jack and the Juice

Registriert seit: 15. Jan 2011
Ort: Lübeck
52 Beiträge
 
#6

AW: FastReport - Images laden

  Alt 6. Sep 2011, 10:24
Nein, "damals" bei den QuickReports befand sich das Ganze in einer Imagelist. Ich habe jetzt folgendes versucht, nur leider ändern sich die Bilder nicht.

Im OnNext vom TfrxDBDataSet steht nun folgendes:

Delphi-Quellcode:
var
  PictureView: TfrxPictureView;
  imgindex: Integer;
begin
  ...
  if cdsmain.FieldByName('Land').value = 'Deutschlandthen
    imgindex := 0;
  if cdsmain.FieldByName('Land').value = 'Frankreichthen
    imgindex := 1;
  ...
  PictureView := frxReport1.FindObject('landimg') as TfrxPictureView;
  PictureView.Picture.bitmap.FreeImage;
  imglist1.GetBitmap(imgindex, PictureView.Picture.bitmap);
Wie gesagt, das Bild bleibt immer bei, in diesem Falle, Deutschland. Per Debugger hab ich das überprüft, die Variable imgindex ändert sich allerdings.
  Mit Zitat antworten Zitat
Jack and the Juice

Registriert seit: 15. Jan 2011
Ort: Lübeck
52 Beiträge
 
#7

AW: FastReport - Images laden

  Alt 8. Sep 2011, 12:22
Ich melde mich hier nochmals zu Wort, falls jemand anders ein ähnliches Problem haben sollte.

Das hier ist der, von mir zunächst genutzte, falsche Weg:
Delphi-Quellcode:
var
  PictureView: TfrxPictureView;
  imgindex: Integer;
begin
  ...
  if cdsmain.FieldByName('Land').value = 'Deutschlandthen
    imgindex := 0;
  if cdsmain.FieldByName('Land').value = 'Frankreichthen
    imgindex := 1;
  ...
  PictureView := frxReport1.FindObject('landimg') as TfrxPictureView;
  imglist1.GetBitmap(imgindex, PictureView.Picture.bitmap);
end;
Um das Ganze zu realisieren, reichte es bei mir aus, einfach ein TBitmap zu erstellen und dieses dann dem PictureView zuzuordnen. So funktioniert es:
Delphi-Quellcode:
var
  PictureView: TfrxPictureView;
  imgindex: Integer;
  bitmap: TBitmap;
begin
  ...
  if cdsmain.FieldByName('Land').value = 'Deutschlandthen
    imgindex := 0;
  if cdsmain.FieldByName('Land').value = 'Frankreichthen
    imgindex := 1;
  ...
  bitmap := TBitmap.Create;
  try
    imglist1.GetBitmap(imgindex, bitmap);
    PictureView := frxReport1.FindObject('landimg') as TfrxPictureView;
    PictureView.Picture.bitmap := bitmap;
  finally
    bitmap.Free;
  end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: FastReport - Images laden

  Alt 6. Sep 2011, 10:23
Schau dir mal die Events im Report an.
Da gibt es einen OnBeforePrint Ein guter Zeitpunkt um einer Komponente (z.B. einer Image-Komponente) noch schnell vor dem Drucken etwas mitzugeben (z.B. ein Bild von wo auch immer)

Dieses Event findest du an jeder Komponente (auch bei den Bändern, etc.)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


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 02:43 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