PDA

View Full Version : Vista top-level frameless qwidget with dropshadow



zebylong
2nd October 2009, 18:18
I'm trying to simulate the effect of a drop shadow behind a frameless top level qwidget, similar to iTunes 9 and the new Zune media player (for Vista). I'm prepared to use native win32 APIs, but am not sure where to start.

Using Qt 4.5.1, my first attempt was to create a translucent parent window with an appropriate border image and padding. That worked well, but I ran into compatibility problems with Microsoft's VMR9 (parent HWND with WS_EX_LAYERED enabled seemed to upset the VMR in Windowless mode).

Using Spy++, I was able to determine that both iTunes and Zune Player's drop shadows are drawn outside of their main application HWNDs. Does this mean the actual OS is doing the drawing? and if so, what is that magic call into the OS?

Thanks in advance for the help!