I'm trying to find a simple way to change the colour of the text and background in listview and treeview controls in WTL or plain Win32 code. I really don't want to have to implement full owner drawing for these controls, simply change the colours used. I want to make sure that the images are still drawn with proper transparency. Any suggestions?
-
It's been a while since I've use the win32 API directly, but I believe that if you handle the WM_ERASEBACKGROUND message for your control, you can use FillRect() in your handler to paint the background using whatever color you like.
From Ferruccio -
Have a look at the following macros:
ListView_SetBkColor
ListView_SetTextColorTreeView_SetBkColor
TreeView_SetTextColorFrom ChrisN -
There are also appropriate methods of the
CListViewCtrl
andCTreeViewCtrl
wrapper classes:- GetBkColor
- SetBkColor
From macbirdie -
You may also want to take a look at WTL's CCustomDraw::OnItemPrePaint (that's if you need to control the drawing of individual items)
A good article that describes this process is here
From Alan
0 comments:
Post a Comment