Vegar
Vegar

Reputation: 12898

How to make a click- and see-through 'always on top'-window

I want to display an semi-transparent always-on-top window with some information, but I do not want this window to take input or receive focus. All mouse-clicks should go to the underlaying window.

I remember seeing this in a shell-replacement application years back, but I can't remeber witch.

Any Ideas how to achieve this effect with delphi or c#?

Update:

I can't quite get the proposed solution to work with delphi. Returning HTTRANSPARENT for the NCHITTEST-message will stop all mousemessages reaching the form, but it want pass it down to the next window in z-order. Is this method ment to work across processes, or is it only ment to work on childelements of a spesific window?

If I set the ExStyle flag WS_EX_TRANSPARENT, though, all mouseclicks will travel through into the next window, but I will not get the NCHITTEST-message at all, and will not be able to control where the windows should be click-through or not...

Upvotes: 3

Views: 3406

Answers (1)

Noldorin
Noldorin

Reputation: 147461

This StackOverflow thread should answer your question hopefully.

Upvotes: 5

Related Questions