Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Panel vs. Image (https://www.delphipraxis.net/133995-panel-vs-image.html)

LDericher 13. Mai 2009 16:02


Panel vs. Image
 
Warum nehmen viele für dynamisch erstellte Grafiken eigentlich TPanel's um sie auf eine Form zu bringen statt es - wie ich - mit einer TImage-Instanz zu realisieren?

Nur mal ne schnelle Frage die mich immer schon mal interessiert hat... ;-)

Gruß vom
LDer.

Fussball-Robby 13. Mai 2009 16:27

Re: Panel vs. Image
 
Zitat:

Zitat von Superwinger
Warum nehmen viele für dynamisch erstellte Grafiken eigentlich TPanel's um sie auf eine Form zu bringen statt es - wie ich - mit einer TImage-Instanz zu realisieren?

Das glaube ich kaum. Denn um eine Grafik zu zeichnen, braucht man ein Canvas - und bei TPanel ist Canvas standardmäßig nicht öffentlich, das heißt man kommt ans Canvas nur über das Handle ran oder man leitet die Komponente ab und macht Canvas dabei öffentlich.
In der Regel wird - wie du schon sagtest - TImage oder TPaintBox verwendet, wobei letzteres bevorzugt werden sollte.

Gruß

turboPASCAL 13. Mai 2009 17:05

Re: Panel vs. Image
 
...oder ebend das Canvas der Form selbst nutzen.

Der Grund in der Verwendung eines Panels und in manchen einer Paintbox, bezieht sich selbs nur auf die Funktion eines Platzhalters.

Ein Image (TImage) dient lediglich als statische Bildanzeige und ist nicht für Animationen erdacht worden...

LDericher 13. Mai 2009 17:40

Re: Panel vs. Image
 
Mit "dynamisch erzeugt" meine ich keineswegs Animationen, sondern zur Laufzeit ertsellte Grafiken.

Gruß vom LDer

Jakob Ullmann 13. Mai 2009 18:25

Re: Panel vs. Image
 
Zitat:

Zitat von Fussball-Robby
das heißt man kommt ans Canvas nur über das Handle ran

Wie geht das überhaupt?

Fussball-Robby 13. Mai 2009 20:59

Re: Panel vs. Image
 
Zitat:

Zitat von Jakob Ullmann
Zitat:

Zitat von Fussball-Robby
das heißt man kommt ans Canvas nur über das Handle ran

Wie geht das überhaupt?

In diesem Thread wurde dieses Thema kürzlich erst behandelt.
Gruß

jaenicke 14. Mai 2009 04:15

Re: Panel vs. Image
 
Zitat:

Zitat von Superwinger
TPanel's um sie auf eine Form zu bringen statt es - wie ich - mit einer TImage-Instanz zu realisieren?

Bist du sicher, dass du TPanel meinst und nicht wie bereits erwähnt wurde eine TPaintBox?

Bei TPaintBox hat man den Vorteil, dass der Inhalt nirgends gespeichert wird. Im Gegenteil, beim Neuzeichnen des Fensters, z.B. weil es durch ein anderes verdeckt war, muss man darauf reagieren und den Inhalt erneuern.

Ein TImage unterstützt prinzipiell beliebige Bildformate (je nach registrierten Typen, siehe z.B. GraphicEx), lädt diese, speichert sie teilweise auch und zeigt sie an. Um jedoch den Inhalt zu verändern muss dieser nicht nur gezeichnet, sondern auch das dahinterliegende Bild aktualisiert werden. Daher ist es für bewegte oder dynamische Inhalte absolut ungeeignet.
Die statische Anzeige eines bestimmten Bildes ist jedoch sehr einfach, da die Verwaltung von der Komponente selbst übernommen wird.

Dann noch kurz etwas zum Grund für eine TPaintBox statt dem Formular selbst:
Diese kann man beliebig positionieren, d.h. wenn ich diese auf dem Formular anders positioniere werden auch die Inhalte dort angezeigt. Wenn ich direkt auf das Canvas des Formulars zeichne, muss ich die Koordinaten selbst anpassen.

Ein Beispiel für eine Paintbox ist mein Periodensystem. Das wäre mit einem TImage so nicht möglich gewesen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 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