![]() |
Re: SplashScreen mit PNG?
Da runterladen und mit in den Graphics32 Ordner hauen.
![]() Bitteschön, Dankeschön, Wiedersehn. |
Re: SplashScreen mit PNG?
Ich möchte auch gerne ein kleines Projekt mit einem halbtransparentem Hintergrund machen...
wie komme ich denn an die hier benutzten Units(uses GR32, GR32_PNG;)dran? |
Re: SplashScreen mit PNG?
|
Re: SplashScreen mit PNG?
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich beziehe mich auf dem beitrag #6 (demo von Khabarakh) und möchte diese technik für folgende app: hauptsächlich soll de user 3 formen zur gesicht bekommen: splash, eine grosse und eine kleine form, wobei nach dem verschwinden des splash screens nur mehr die grosse und kleine form zur verfügung steht und zwischen er beliebig wechseln kann. eine übersicht der klassenhierarchie wurde beigelegt. die grünen formen sollen anhand von png backgrounds dargestellt werden und sind nicht quadratisch und besitzen transparenz (grund warum ich mich für diese technik entschieden habe). ich habe bereits versucht diese technik einzubauen, jedoch bleiben die endformen(klein und gross) quadratisch, und nicht z.b. mit abgerundeter ecken. der grund für diese etwas kompliziertere struktur ist, dass die module untereinander kommunizieren können, bzw. die app ist multilanguage ausgelegt. das modul baseform beinhaltet die units pngimage, GR32, GR32_png die dafüt notwendig wären (wie in der demo) und deklariert eine funktion LoadPNG wo genau die funktionalität wie in der OnCreate von der demo drin steht. diese methode wird in der jeweilige oncreate methode von alle 3 besagten formen. was mache ich falsch ? ich würde mich sehr freuen wenn, jemand mir helfen könnte. Danke! |
Re: SplashScreen mit PNG?
Zeige einmal ein wenig Code und/oder Ist-/Soll-Zustand-Bilder. Eigentlich muss nur WS_EX_LAYERED gesetzt werden und nach jeder Veränderung des Bitmaps UpdateLayeredWindow aufgerufen werden, dann sollte alles funktionieren.
|
Re: SplashScreen mit PNG?
Hi, kingflo.
Dein Splash Screen sieht echt klasse aus. :-D Wie hast du das gemacht, dass dieses "HTML,.... im Hintergrund, nur so schwach erscheint und wo hast du die TPNGImage her? Thx, im Voraus. |
Re: SplashScreen mit PNG?
Lies dir sein Posting noch einmal durch und du wirst bemerken, dass der Screenshot überhaupt nicht "echt" ist, sondern höchstwahrscheinlich in einem Grafikprogramm erstellt wurde. Und lies noch ein wenig weiter, dann könntest du sogar zu der Stelle des Threads gelangen, an der ich beschreibe, wie sich so etwas doch realisieren lässt. Und wenn du dann auch noch in deine Addressleiste wechselst und dort "google.de" eintippst, ja... dann könntest du mit etwas Glück sogar TPNGImage finden.
|
Re: SplashScreen mit PNG?
thx. das TPNGImage habe ich gefunden, funzt auch.
Den Rest würde ich dann z.B. einfach über Photoshop machen. Thx. |
Re: SplashScreen mit PNG?
Also, ich habe mir mal deine Demo runtergeladen. Wenn ich die Datei Project1.dpr in meinem Delphi öffnen möchte, meckert er rum, dass im die Datei Project1.res fehlt. Und sry, aber ich bin zwar trotz einiger Delphierfahrungen, aus dem Schulinformatikkurs und ein paar Versuchen zuhause auch noch kein Delphi-Ass und weiß daher leider nicht, wie ich den Text in meine Form einbinde. Ich habe mal durch zufall einen code gefunden, der die Form transparent macht, aber bis auf Button leider auch Images, Panels, etc., die dann auch transparent werden und somit nicht sichtbar. Einfach kopieren geht ja nicht, da meckert Delphi bei jedem dritten Wort: "undeclared identifier"
Folgender Code macht das Formular transparent. [Bis auf Button]
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject); var FullRgn, ClientRgn, ButtonRgn: THandle; Margin, X, Y: Integer; begin Margin := (Width - ClientWidth) div 2; FullRgn := CreateRectRgn(0, 0, Width, Height) ; X := Margin; Y := Height - ClientHeight - Margin; ClientRgn := CreateRectRgn (X, Y, X + ClientWidth, Y + ClientHeight) ; CombineRgn(FullRgn, FullRgn, ClientRgn, RGN_DIFF) ; X := X + Button1.Left; Y := Y + Button1.Top; ButtonRgn := CreateRectRgn (X, Y, X + Button1.Width, Y + Button1.Height) ; CombineRgn(FullRgn, FullRgn, ButtonRgn, RGN_OR) ; SetWindowRgn(Handle, FullRgn, True) ; end; |
Re: SplashScreen mit PNG?
Was spricht denn dagegen, einen Screenshot zu machen, den in ein TImage zu laden über das ganze Form und die PNG drüberlegen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:44 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