I have a CMyStatusBar calss from CStatusbar to implement pane clicks and drawing bitmaps in two fo the panes. The bitmaps are drawn using bitblt in the DrawItem override and this has always worked.
//in Mainfrm.h
CMyStatusBar m_wndMyStatusBar;
I have now added another CNewStatusbar class derived from CStatusbar and made CMystatusbar inherit from CNewStatusbar.
It compiles fine but now DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) in CMyStatusBar is not called. I even put it in the CNewStatusBar class and it is not called there either.
Why is DrawItem no longer called? My click routines still function normally.
I thought maybe the Paint() override in the CNewStatusbar class was wiping out the bitmaps or something but found by putting break points in DrawItem() that it is not even called on creation.
But isn't OP's CMyStatusBar already derived from CNewStatusBar ???
CStatusBar==> CNewStatusbar==>CMyStatusbar...is this correct ?
[Note:==> means "is a base class of"]
Possible to be necessary shuffling the cards again.
However, I think my ideea was clear: most possible, the OP replaced base class CStatusBar in the class definition, but forgot to do the same in the implementation file.
Well, if you have "the same problem" as OP and none from the provided hints ahs help you, please, show your code (with code tags) and the full problem description.
Bookmarks