AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Quickrport: Hintergrundbild ist immer vorne

Quickrport: Hintergrundbild ist immer vorne

Ein Thema von BlueStarHH · begonnen am 7. Okt 2021 · letzter Beitrag vom 8. Okt 2021
Antwort Antwort
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
802 Beiträge
 
Delphi 11 Alexandria
 
#1

Quickrport: Hintergrundbild ist immer vorne

  Alt 7. Okt 2021, 13:05
Hallo zusammen,

ich habe einen Quickreport, der ein Hintergrundbild haben soll (rot im Bildschirmfoto unten). Dieses soll hinter allen anderen Objekten liegen. Parent ist daher der Quickreport. Dadrüber soll ein Band liegen, das hier z.B. ein grünes Bild enthält. Parent von dem grünen Bild ist daher das Band. Ganz im Vordergrund ein blaues Bild, dass alle anderen Objekte überlagert. Das hat auch den Quickreport als Parent.

In der IDE sieht es so aus, wie ich es haben möchte. Linkes Beispiel im Bildschirmfoto hier.
Lasse ich mir mit Preview() eine Druckvorschau anzeigen, stimmt die Reihenfolge nicht mehr. Rechts im Bildschirmfoto.
Was kann ich tun?

Angehängt ist ein komplette Demo, wo statt Bildern Shapes verwendet werden, damit das Demo möglichst klein ist.

qrbackground.png
Angehängte Dateien
Dateityp: zip QrBackImg.zip (54,2 KB, 2x aufgerufen)

Geändert von BlueStarHH ( 7. Okt 2021 um 13:08 Uhr)
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
677 Beiträge
 
Delphi 12 Athens
 
#2

AW: Quickrport: Hintergrundbild ist immer vorne

  Alt 7. Okt 2021, 15:13
So funktioniert das anscheinend nicht.

Aber:
Der Quickreport hat die Eigenschaft BackImageControl. Das ist ein String. Da kannst du den Namen eines TQRImage reinschreiben, dass dein Hintergrundbild enthält. Das bleibt dann auch im Hintergrund.
  Mit Zitat antworten Zitat
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
802 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Quickrport: Hintergrundbild ist immer vorne

  Alt 7. Okt 2021, 18:11
So funktioniert das anscheinend nicht.

Aber:
Der Quickreport hat die Eigenschaft BackImageControl. Das ist ein String. Da kannst du den Namen eines TQRImage reinschreiben, dass dein Hintergrundbild enthält. Das bleibt dann auch im Hintergrund.
Danke für den Hinweis. BackImageControl sieht mir nach einem Workaround aus, den die Quickreport-Entwickler eingebaut haben, um das von mir angesprochene Problem zu lösen. Hilft wohl in den meisten Fällen. Mir aber leider nicht, da ich mehrere Bilder habe, die an unterschiedlichen Positionen eingefügt werden. Und: Das ganze wird auch für andere QrControls wie z.B. QrLabel oder QrRichText benötigt.
  Mit Zitat antworten Zitat
BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
480 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Quickrport: Hintergrundbild ist immer vorne

  Alt 8. Okt 2021, 07:52
Solltest du die Quellen von QR haben, sollte es relativ einfach möglich sein, das in
TCustomQuickRep.NewPage und TCustomQuickRep.EndPage anzupassen.

Dazu würde ich aus FBackgroundcontrol eine TList<TQRPrintable> machen und in den beiden Methoden das entsprechend anpassen.

Die Liste könnte man dann entweder von Hand füllen, oder das über die Komponentennamen regeln. (z.B. imBackgroundimage1, imBackgroundimage2 usw.)
Bernd
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 20:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz