俺是刚刚开始学vc的
想知道在对话框中让回车键具有tab键得功能应该咋办?
请大家帮帮忙!!

解决方案 »

  1.   

    重载WM_KEYDOWN,
    {
       if(nChar==13) 
       {
           做TAB键做的事
       }
    }
      

  2.   

    我用mfc编的,我不知道在何处重载WM_KEYDOWN?
      

  3.   

    WM_KEYDOWN当中截获不了ENTER键盘。
    应该为 对话框新创建一个继承于CEdit的类,然后重载 PreTranslateMessage函数,在这里是可以截获ENTER键盘的,发现了之后,把消息参数当中的ENTER数值修改为TAB的数值就可以了。
      

  4.   

    可以用下面两种方法解决:
    BOOL CTestDlg::PreTranslateMessage(MSG* pMsg) 
    {
      if (pMsg->message == WM_KEYDOWN)
      {
         if ((DWORD)pMsg->wParam == VK_RETURN)
         {
           pMsg->wParam = (WPARAM)VK_TAB;
         }
      }
      return CDialog::PreTranslateMessage(pMsg);
    }或者
    BOOL CTestDlg::PreTranslateMessage(MSG* pMsg) 
    {
        if(pMsg->message==WM_KEYDOWN&&pMsg->wParam==VK_RETURN)
        {
            NextDlgCtrl();
            return TRUE;
        }
        return CDialog::PreTranslateMessage(pMsg);
    }