"transparenz von WM" kA wie des heißt
-
Hallo.
Mein Problem ist, dass ich gerne ein Transparentes Fenster basteln würde das immer im vordergrund ist, das durch seine anwesenheit jedoch andere Nachrichten nicht blockiert.
In der Forensuche war das einzige was ich gefunden habe, dass ich doch WM_LBUTTONDOWN etc. abfangen soll; sind aber irgendwie zu viele messages .... gibts da nich vielleicht noch ne schönere methode?mfg jghj
-
also was heißt abfangen....dass ich die halt an das darunterliegende fenster weiterleiten soll.
Falls ich mich jetz noch bissl undeutlich ausgedrückt hab is das mein problem und nicht die _visuelle_ transparenz
danke schonma
-
WM_NCHITTEST: return HTTRANSPARENT;
-
ne geht leider auch nich

hat sonst noch jemand nen vorschlag?
-
hehe peinlich peinlich ... also ich bin mir zwar jetz noch nich 100%ig sicher obs alles so is wie ich des wollte, aber auf jeden Fall gings ganz einfach mit dem WS_EX_TRANSPARENT style. Bin noch am rumtesten
falls ihr nix mehr im topic von mir hört hats geklappt...also für die andern die ma danach suchen sollten
mfg jghj
-
ok funzt ... vielleicht aber auch zu gut? *G*
ich würd jetzt gerne noch machn, dass man bei ner bestimmten aktion dann eben schon drauf klicken kann (z.B. gedrückter strg taste oder so)
aber weil der ja jetz alles durchhaut geht das ja nicht. Was mir jetzt spontan einfallen würde wären hooks.
Aber gibts da nich vllt doch noch ne einfachere Lösung? Vielleicht dass ich im NCHITTEST was anderes machen muss?
Hab probiert ne mauskoordinaten auszulesen, WindowFromPoint() aufzurufen und dann einfach SendMessage(hWnd, msg, wparam, lparam) zu machen; aber sobald ich mein cursor dahin beweg verreckt mir des programm.
traurig
-
sonst keiner ne idee??
-
jghj schrieb:
sonst keiner ne idee??
Windowstyle: WS_EX_LAYERED setzen.
Mit SetLayeredWindowAttributes setzt Du einen Alpha-Channel bei der Zeichnung des Gerätekontext und kannst damit die Transparenz des Windows von 0 - Total bis Opaque voll-sichtbar einstellen. Nachteil: Auch die Controls werden damit erfasst.
-
lol ja is mir klar ... das war aber nicht das was ich wollte.
die aktionen die auf das fenster gehen, sollen auf das darunterliegende weitergeleitet werden.
und das funktioniert mit WS_EX_TRANSPARENT
aber ich will eben ne möglichkeit, dass es nicht "durchgeschleift" wird; wenn ich z.B. die STRG taste gedrückt halte.
Deshalb wärs halt gut wenn man das manuell ans nächste fenster bei mousemove o.ä weiterreichen könnte (WM_NCHITTEST), weil ich dann die STRG taste prüfen könnte ob die gedrückt ist.