想获取列表框中鼠标双击消息,用了子类方式来实现,但在消息处理函数中不能获取ESCAPE键的消息,程序如下,不知为什么?
其中g_OrgWndProc 是原列表框类真正的消息处理函数
LRESULT CALLBACK ExListViewWndProc( HWND hWnd , UINT message, WPARAM wParam , LPARAM lParam )
{
switch( message )
{
case WM_RBUTTONDOWN:
MessageBeep( -1 );
break;
case WM_LBUTTONDOWN:
//SubItemHitTest( );
break;
case WM_LBUTTONDBLCLK:
MessageBox( hWnd ,"双击鼠标","消息",MB_OK );
break;
case WM_KEYDOWN:
switch( wParam )
{
// 程序不能执行到此句
case VK_ESCAPE:
MessageBox( hWnd ,"按下ESC","消息" ,MB_OK );
break;
case VK_F1:
// 程序可以执行到此句,
MessageBox( hWnd ,"按下F1","消息" ,MB_OK );
break;
default:
MessageBox( hWnd ,"有按键按下","消息",MB_OK );
break;
}
break;//return 1;
default:
break;
}
return ( CallWindowProc( g_OrgWndProc , hWnd ,message , wParam , lParam ));
}