Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Bei einem Formulare als Child funktioniert die Transparenz nicht ?! (https://www.delphipraxis.net/155811-bei-einem-formulare-als-child-funktioniert-die-transparenz-nicht.html)

ULIK 9. Nov 2010 09:47

Bei einem Formulare als Child funktioniert die Transparenz nicht ?!
 
Hallo,

ich benötige ein semitransparentes Formular. Solange ich es normal mit
Delphi-Quellcode:
FMenuControl := TForm.Create(FMainForm);
FMenuControl.Parent := nil;
FMenuControl.AlphaBlend := true;
FMenuControl.AlphaBlendValue := 200;
FMenuControl.Position := poDesigned;
FMenuControl.FormStyle := fsStayOnTop;
oder mittels der Procedure aus MakeWindowTransparent mache, funktioniert das auch gut. Nun möchte ich aber das Formular als Kindfenster eines bestehenden Haupt-Formulars haben (sprich, es soll nicht über das Hauptfenster hinaus sichtbar sein:
Delphi-Quellcode:
FMenuControl := TForm.Create(FMainForm);
FMenuControl.Parent := FMainForm;
FMenuControl.AlphaBlend := true;
FMenuControl.AlphaBlendValue := 200;
FMenuControl.Position := poDesigned;
FMenuControl.FormStyle := fsStayOnTop;
Nur sobald ich den Parent setze, geht mir bei beiden Methoden die Transparenz verloren. Gibt es dafür eine Lösung (mir würde auch ein Panel genügen, das sich [und darauf enthaltenen Komponenten] halbtransparent darstellen kann) ?

Grüße,
Uli

SirThornberry 9. Nov 2010 12:09

AW: Bei einem Formulare als Child funktioniert die Transparenz nicht ?!
 
Es gibt keine Lösung. Zumindest bis WindowsXP ging es rein von der Windows-Api her nicht. Child-Controls übernehmen die Transparent des Parents.

Bummi 9. Nov 2010 12:13

AW: Bei einem Formulare als Child funktioniert die Transparenz nicht ?!
 
Ist bei den Nachfolgern auch so.

ULIK 9. Nov 2010 12:39

AW: Bei einem Formulare als Child funktioniert die Transparenz nicht ?!
 
Ich hab's befürchtet. :cry: Tja, dann halt nicht als Child und aussen rum programmiert, so daß die Fokuswechsel nicht so auffallen. :?
Aber Danke für die Erklärungen.

Grüße,
Uli


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