About custom caption bar. ( can't receive the mouse down message )
hi all,
I write a custom caption code like this:
LRESULT CPlayerDlg::WindowProc(UINT message, WPARAM wParam, LPARAM
lParam)
{
if( message == WM_CAPTURECHANGED ||
//message == WM_NCACTIVATE || // ( NOTICE THIS LINE! )
message == WM_NCPAINT ||
message == WM_INITMENUPOPUP ||
message == WM_SETTEXT ||
message == WM_GETTEXT )
{
CDialog::WindowProc( message, wParam, lParam );
CDC* pWinDC = GetWindowDC( );
if ( pWinDC )
{
DrawFrame( bActive, pWinDC );
ReleaseDC( pWinDC );
}
return 0;
}
}
YES, the caption and window border were drawn on my way.
but have a problem, if I cancel the comment of notice line,
//message == WM_NCACTIVATE ||
the dialog can't receive the mouse down message.
example:
I create a dialog in CPlayerDlg.
m_cTestDlg.Create( CTestDialog::IDD );
m_cTestDlg.ShowWindow( SW_SHOW );
All buttons on TestDlg were lost respond.
I debug it. notice, All buttons can received the mouse move message,
mouse up message and so on, but, except mouse down message.
so all buttons can't click.
why bring this bug?
and if I comment the
//message == WM_NCACTIVATE ||
line.
all is ok! but custom caption bar was worked failed.
how should I do ?
thank you!