Delphi-PRAXiS
Seite 1 von 6  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Form mit PNG Skin und VCL Controls (https://www.delphipraxis.net/75824-form-mit-png-skin-und-vcl-controls.html)

Coder90 25. Aug 2006 12:49


Form mit PNG Skin und VCL Controls
 
Liste der Anhänge anzeigen (Anzahl: 4)
Edit//
turboPASCAL hat wahrscheinlich eine bessere Lösung gefunden

http://www.delphipraxis.net/internal...=606056#606056

Hi
Nach endlosem rumgefriemel hab ichs endlich geschafft. :D

http://img134.imageshack.us/img134/785/skinbl1.png
Screenshot 2

Eine transparente PNG Form mit VCL Controls.
Kein geruckel beim verschieben und sehr CPU freundlich.
Perfekt geeignet für kleine Utilities und Widgets.
Und das Beste: es ist kostenlos. :D

Die ganze Sache besteht aus 2 Forms.
Einmal die Hauptform mit den Controls. Durch TransparentColor wird der Hintergrund durchsichtig gemacht. Nachteil: Komponenten mit Transparents wie die XP Buttons werden mit Rand dargestellt.
Auf der 2. Form wird die PNG per Graphics32 angebracht. Dadurch gehn die VCL Controls verloren. Deshalb auf einer extra Form.
Durch ein bischen friemelei wird die erste Form immer vor der zweiten Form gehalten und beim verschieben mitbewegt.

Zum kompilieren braucht man die Graphics32, die GR32_PNG.pas (unten) und PNGImage.

Der Source ist nicht der beste.
Über Verbesserungvorschläge würd ich mich freuen.
Danke

Crossposting DF

MfG, Coder90

Gandalfus 25. Aug 2006 14:41

Re: Form mit PNG Skin und VCL Controls
 
Warum benutzt du nicht Regions?

himitsu 25. Aug 2006 14:56

Re: Form mit PNG Skin und VCL Controls
 
Ich würd mal sagen, weil Regions keine Teiltransparenz zulassen?


Dennoch ist es nicht gerade 'ne ideale Lösung :shock:
(hab aber och nüschts Besseres)

PS: das mit dem "Rahmen" um abgerundete (XP)-Controls tauchst auch schon auf, wenn man DoubleBuffered aktiviert . liegt halt daran, daß beim Zeichnen der Hintergrund nicht vorhanden ist und daher dieser als Schwarz gezeichnet wird :(

Coder90 25. Aug 2006 15:00

Re: Form mit PNG Skin und VCL Controls
 
Zitat:

Zitat von himitsu
Dennoch ist es nicht gerade 'ne ideale Lösung :shock:

Aber die einzige die ich kenne. :wink:
Hab bisher nirgendwo eine bessere gesehn.

BrainCracked 26. Aug 2006 18:26

Re: Form mit PNG Skin und VCL Controls
 
Ich habe die Graphics32 jetzt installiert. Aber bei der GR32_PNG.pas kommt immer eine Fehlermeldung. Soll die Komponente noch in das Package von Graphics32? Wie macht man das? Ich nutze Delphi 2005 PE.

turboPASCAL 6. Sep 2006 13:26

Re: Form mit PNG Skin und VCL Controls
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zugegeben, die Idee ist nicht schlecht aber auch nicht neu. ;)

Ich gehe einen anderen Weg, einfach das Bitmap der Form verwenden ( FormX.GetFormImage ).
Das wird dan per Transparentcolor auf das "Pngfenster" gezeichnet.

Im Anhang mal ein Demoprojeckt. Aber Achtung, irgrnd wo ist noch ein dickes Memoryleak.
Entweder in meinem Programm oder in der GR32.Pas. ;)

An sonsten bleibt nur noch der Weg sich die Controld wie Buttons, Labels usw. neu zu schreiben und diese auf das Bitmap zu zeichnen.

Coder90 11. Sep 2006 21:07

Re: Form mit PNG Skin und VCL Controls
 
@BrainCracked: Es reicht wenn die GR32_PNG.pas in einem Verzeichniss ist, welches Delphi im Suchpfad hat
oder im gleichen Ordner wie das Projekt, dass sie verwendet.
Auserdem musst du noch PNGImage installieren.
Ich hab auch D2005PE und es funktioniert. ^^

@turboPASCAL:
Gute Idee ABER deine Form lässt sich nicht verschieben.
Meine schon. (Einfach irgendwo aufs PNG klicken)
Edit// Werds nochmal unter die Lupe nehmen

turboPASCAL 11. Sep 2006 22:36

Re: Form mit PNG Skin und VCL Controls
 
Zitat:

Zitat von Coder90
@turboPASCAL:
Gute Idee ABER deine Form lässt sich nicht verschieben.
Meine schon. (Einfach irgendwo aufs PNG klicken)

...

Hatte ich bei dem Demo auch nicht vorgesehen, das verschieben ist das einfachste.
DAs Prob. war nur die Form ohne Form aber mit Controls. ;)

Schneehasi 5. Dez 2006 09:58

Re: Form mit PNG Skin und VCL Controls
 
leg das transparente Form mal über nen Video ... dann ist leider Schluss mit transparenz :-( gibt es dafür nen Weg, oder ist das aussichtslos ?

delphinia 15. Dez 2006 16:05

Re: Form mit PNG Skin und VCL Controls
 
gibt es ne möglichkeit das auch für D5 zu machen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:29 Uhr.
Seite 1 von 6  1 23     Letzte »    

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