i create a treeview in a wnd derived from CWindowImpl ( i use atl), and i create a imglistctrl for the treeview, everything seems ok of the imagelist, and i assign a image index for every node of the trewview, but no icon shows, and a small empty rect keeps at the left of every node's, anyone can help me?
class CJMainForm : public CWindowImpl
{
public:
DECLARE_WND_CLASS("JMainFrameClass")
CJMainForm(void);
~CJMainForm(void);
BOOL ShowForm(BOOL bShow = TRUE);
BEGIN\_MSG\_MAP( CJMainForm )
MESSAGE\_HANDLER( WM\_PAINT, OnPaint)
MESSAGE\_HANDLER(WM\_LBUTTONDOWN, OnLButtonDown)
MESSAGE\_HANDLER(WM\_MOUSEMOVE, OnMouseMove)
MESSAGE\_HANDLER(WM\_ERASEBKGND, OnEraseBkgnd)
MESSAGE\_HANDLER(WM\_QUERYENDSESSION, OnQueryEndSession)
END\_MSG\_MAP()
public:
CXAnalogClock m_wndClock;
CCalenderWnd m_wndCalender;
CWindow m_wndPrjTree;
HBRUSH m_brBackGround;
SIZE m_szbrBackGround;
protected:
LRESULT OnPaint( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled );
LRESULT OnLButtonDown( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled );
LRESULT OnMouseMove(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnEraseBkgnd(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnQueryEndSession(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
HICON m\_icoExit;
HICON m\_icoPrevYear;
HICON m\_icoNextYear;
HICON m\_icoPrevMonth;
HICON m\_icoNextMonth;
HICON m\_icoToday;
HFONT m\_icoTextFont;
int m\_CurrentRegion, m\_nOldRegion;
HICON m\_icoNodeClosed;
HICON m\_cioNodeOpen;
HICON m\_icoAttrib;
enum EnToolBtnState
{
tbs\_normal = 0,
tbs\_hover,
tbs\_prress\_down,
}m\_nToolBtnState\[6\];
RECT m\_rcToolBtn\[6\];
HBRUSH m\_brToolBtnHover;
int m\_nLastToolBtnHit;
enum SKIN
{
cpbob = 0,
cpnobob,
darkblue,
silver,
gold,
black,
lightblue,
green,
red,
rose,
aqua,
neonblue,
bluestreak,
crystalgreen,
crystalblack,
crystalblue,
crystalred,
crystalyellow,
silverring,
minimal,
white,
};
void SetSkin();
struct SKIN\_MENU\_DATA
{
UINT nID;
UINT nClockFaceBitmapId;
UINT nDateBitmapId;
TCHAR \*pszName;
};
static SKIN\_MENU\_DATA m\_Skins\[\];
static int m\_nSkins;
SKIN m\_eSkin;
ATL::CString m\_strSkin;
SKIN GetSkinFromName(LPCTSTR lpszSkinName);
private:
void ParseNode(IDispatch* pNode,HTREEITEM hParent);
HTREEITEM CJMainForm::InsertTreeItem(HTREEITEM hItem, LPCTSTR lpszItem, int nImage,
int nSelec