![]() |
Rahmen in fremd gezeichnetes Panel/Form zeichnen
Hallo Gemeinde,
Mir ist kein besserer Titel eingefallen. Ich benutze eine 64bit C++ DLL API wie schon in einem anderen ![]() Es handelt sich um eine API eines Videostreaming Systems. Für die Anzeige des Streams wird der API ein Handle eines VCL WinControls (TForm oder TPanel) übergeben. Die Api zeichnet dann auf dieses Control mit bis zu 50fps - was wunderbar funktioniert. Ein Feature ist das Digitalzoom welches ebenfalls via API benutzt werden kann. Mit den Mousewheel Events kann ich die Digitalzoom Funktionen ansprechen. Nun: Um zu sehen welcher Bereich gezoomt wird möchte ich einen Rahmen in Anhängigkeit des Zoomfaktors und der Position in das Bild zeichnen. Mit Canvas geht das (logischerweise ?) nicht da die API permanent auf das Control zeichnet. Irgendwie fehlt mir da die Idee wie so etwas gemacht werden könnte. In meiner Naivität hatte ich gehofft ein Panel Transparent zu setzen und nur den Rahmen dieses zu nutzen. Leider bietet sich diese Möglichkeit nicht. Natürlich könnte ich vier Panels mit Breite 1PX auf das Control legen und dann in Abhängigkeit die Positionen x/y/Breite/Höhe platzieren um einen Rahmen zu simulieren. Dieser sollte dann aber auch noch verschoben werden können. Gibt es eine einfachere Möglichkeit? |
AW: Rahmen in fremd gezeichnetes Panel/Form zeichnen
ähhhhhhhhhhhh
![]() oder wenn z.B. nach ![]() Aber im Grunde sollte es doch reichen ein WinControl (kein GraphicControl) über das Control zu legen, welches für die Ausgabe der DLL genutzt wird? Und dort via Clipping den inneren Bereich auszuschneiden. Oder einfach 4 WinControls (z.B. TPanel), für jede Seite. |
AW: Rahmen in fremd gezeichnetes Panel/Form zeichnen
Zitat:
![]() |
AW: Rahmen in fremd gezeichnetes Panel/Form zeichnen
Das geht mit
![]() |
AW: Rahmen in fremd gezeichnetes Panel/Form zeichnen
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
AW: Rahmen in fremd gezeichnetes Panel/Form zeichnen
Zitat:
![]() |
AW: Rahmen in fremd gezeichnetes Panel/Form zeichnen
Man kann Regionen "kombinieren",
also eine Region über das ganze Fenster/Control erzeugen und davon den inneren Bereich durch eine weitere Region subtrahieren. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 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