Hi.
I made MyExtDynamicControlbar that derived CExtDynamicControlbar to handle controlbar button.
But, virtual method of CMyExtDynamicControlBar is not called in my application.
what is the problem?
thanks.
///////My Code is below//////////////////////////
class CMyExtDynamicControlbar : public CExtDynamicControlBar
{
public:
DECLARE_DYNCREATE( CExtCoustomControlbar );
CMyExtDynamicControlbar();
virtual ~CMyExtDynamicControlbar();
bool NcButtons_HandleClick(CExtBarNcAreaButton * pNcAreaButton,
CPoint point,
CExtControlBar * pBarEventSource,
CExtControlBar * pBarActiveInContainer);
void OnNcAreaButtonsReinitialize();
};
bool CMyExtDynamicControlbar::NcButtons_HandleClick(CExtBarNcAreaButton * pNcAreaButton,
CPoint point,
CExtControlBar * pBarEventSource,
CExtControlBar * pBarActiveInContainer)
{
CMainFrame *pWnd = (CMainFrame *)AfxGetMainWnd();
ASSERT_VALID( this );
#ifdef _DEBUG
if( pBarEventSource != NULL )
{
ASSERT_VALID( pNcAreaButton );
}
if( pBarEventSource != NULL )
{
ASSERT_VALID( pBarEventSource );
}
#endif // _DEBUG
pNcAreaButton;
point;
pBarEventSource;
pBarActiveInContainer;
if (pBarEventSource)
{
for (DWORD i = 0; i < 4; i++)
{
if (pWnd->m_clsPlaybackTabDlg[i].GetSafeHwnd() == pBarEventSource->m_hWnd)
{
pWnd->m_clsPlaybackTabDlg[i].OnDestroy();
}
return true;
}
void CMyExtDynamicControlbar::OnNcAreaButtonsReinitialize()
{
ASSERT_VALID( this );
INT nCountOfNcButtons = NcButtons_GetCount();
if( nCountOfNcButtons > 0 )
return;
NcButtons_Add( new CExtDynamicBarNcAreaButtonClose(this) );
#if (!defined __EXT_MFC_NO_TAB_CONTROLBARS)
NcButtons_Add( new CExtDynamicBarNcAreaButtonAutoHide(this) );
#endif // (!defined __EXT_MFC_NO_TAB_CONTROLBARS)
NcButtons_Add( new CExtDynamicBarNcAreaButtonMenu(this) );
}