Desktop paints order backwards
From: Gili (sittingduck_at_bbs.darktech.org)
Date: 04/28/04
- Next message: Maxim Shemanarev: "Anti-Grain Geometry - 2D Rendering Library"
- Previous message: Louis Solomon [SteelBytes]: "Re: List control problem"
- Messages sorted by: [ date ] [ thread ]
Date: 28 Apr 2004 11:58:31 -0700
Hi,
I added two message-listeners (through subclassing) to the Progman
and SysListView32 windows. Here is what I observe:
(SysListView32) message=WM_PAINT,wParam=0, lParam=0,return=0
(SysListView32) message=WM_NCPAINT,wParam=0, lParam=0,return=0
(SysListView32) message=WM_ERASEBKGND,wParam=0, lParam=0,return=0
(SysListView32) message=LVM_GETBKCOLOR,wParam=0, lParam=0,return=0
(Progman) message=WM_ERASEBKGND,wParam=0, lParam=0,return=0
What I see is that SysListView32 paints the desktop icons *before*
Progman draws the desktop wallpaper. This makes no sense to me since
the Progman window is located below SysListView32 and one needs to
draw the wallpaper *before* the icons. I know that somehow the DC
passed to Progman WM_ERASEBKGND refers to the background of
SysListView32 and this paints *under* the icons but this makes no
sense to me since painting is occuring *after* icons have been drawn.
Can anyone please explain to me how this works? The reason I ask
is that I am creating a new DC inside Progman's WM_ERASEBKGND handler
and when I paint to it it is painting over the icons (as expected) but
I want it too to draw under the icons like the HDC passed in through
wParam.
Please help,
Gili Tzabari
- Next message: Maxim Shemanarev: "Anti-Grain Geometry - 2D Rendering Library"
- Previous message: Louis Solomon [SteelBytes]: "Re: List control problem"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|