我要的是对话框捕获键盘按下的消息后再捕获键盘输入的字符串
BOOL CSSSDlg::PreTranslateMessage(MSG* pMsg) 
{
    if(pMsg->message==WM_KEYDOWN) 
             {可以捕获到键盘按下的消息}
    return CDialog::PreTranslateMessage(pMsg);
}但是怎么捕获键盘输入的消息呢?
主要是要获取键盘输入的字符,然后存入一个字符串,pMs好像没法获取?????

解决方案 »

  1.   


    .....能详细点吗?貌似没看到WM_KEY难道只能在APP中获取字符码?
    BOOL CXXApp::ProcessMessageFilter(int code, LPMSG lpMsg) 
    {
    cstring+=(char*)code;
    return CWinApp::ProcessMessageFilter(code, lpMsg);
    }
      

  2.   

    WM_IME_COMPOSITION/WM_IME_CHAR/WM_IME_ENDCOMPOSITION
      

  3.   


    谢谢我已经找到更简单的解决方法,在PreTranslateMessage(MSG* pMsg)将pMsg=m_hWnd,在调用WM_KEYDOWN就可以
      

  4.   


    再请教下WM_KEYDOWN消息响应函数
    OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 如何判断nChar是回车键?if(nChar==VK_ENTER)?????会出错呀
      

  5.   

    在PreTranslateMessage(MSG* pMsg)将pMsg=m_hWnd,再调用WM_KEYDOWN会报错。为虾米!!!