Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Fenster "durchklickbar" machen (https://www.delphipraxis.net/19181-fenster-durchklickbar-machen.html)

SirThornberry 30. Mär 2004 17:10

Re: Fenster "durchklickbar" machen
 
Also wenn ich brushstyle auf bsClear setze ist das fenster nicht unsichtbar sonder es wird einfach nicht gepaintet. Wenn ich das Fenster dann verschiebe sehe ich somit das es nicht wirklich durchsichtig ist sondern nur der untergrund nicht übermalt wurde...

SirThornberry 30. Mär 2004 17:13

Re: Fenster "durchklickbar" machen
 
@neuni: Leider ist das form auch vollständig durchsichtig und nicht nur etwas transparent :cry:

Mirilin 30. Mär 2004 18:38

Re: Fenster "durchklickbar" machen
 
:hi:

:gruebel: Mein D6 versteht AlphaBlend.

mfg Tobias


ps : Klick

himitsu 30. Mär 2004 19:04

Re: Fenster "durchklickbar" machen
 
Also bei halbtransparent kann man ja nicht durchklicken - das geht nur bei 100% durchsichtig (wie z.B. durch das Loch aus Miri's Klick).

Das Halbtransparente ging auch schon bei meinem D4 (siehe letzte Anzwort in Alphablend)

Den Klick auf das eigene Programm zu bekommen ist ja nicht das Problem und dann gibt es doch auch bestimmt 'ne Möglichkeit das Handle des Fensters hinter deinem Programm zu bekommen und den Mausklick+Clickposition z.B. über 'ne Windowsbotschaft an dieses zu schicken. :gruebel:


@Miri: der Parameter AlphaBlend ist eventuell schon im D6 eingebaut, wird aber vieleicht noch nicht im OI angezeigt - so wie die 98-Unterstützung (aus XP bekannt) schon in 2000 drin ist (man muß die nur irgendwo in der Registry aktivieren)...

me2u 30. Okt 2006 19:30

Re: Fenster "durchklickbar" machen
 
Ich weiß: Dieser Thread ist extrem alt, der Vollständigkeit halber wollte ich ihn aber trotzdem ergänzen. Ich habe mir selbst einen Wolf gesucht um dieses Problem zu lösen und bin soeben auf eine extrem simple, aber funktionale Lösung gestoßen.

Das hier ist alles, was man dafür im Grunde braucht:
Delphi-Quellcode:
SetWindowLong(Handle, GWL_EXSTYLE, getWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TRANSPARENT or WS_EX_LAYERED);
Das entscheidende ist die Style Konstante "WS_EX_LAYERED". Sie sorgt dafür, dass die Klicks an das darunter befindliche Fenster gehen und nicht mehr vom eigenen Fenster abgefangen werden.

Ich hoffe es wird dem einen oder der anderen von Nutzen sein.

simjoh 7. Jul 2007 22:38

Re: Fenster "durchklickbar" machen
 
Hi,

also bei mir verschwindet das Fenster dann vollständig, ist garnicht mehr zu sehen. Die Objekte auf dem Fenster sollen aber doch sichtbar bleiben, wie geht sowas?

_frank_ 7. Jul 2007 23:06

Re: Fenster "durchklickbar" machen
 
schonmal regions ( http://msdn2.microsoft.com/en-us/library/ms536680.aspx ) angeschaut?

Gruß Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:28 Uhr.
Seite 2 von 2     12   

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