MFC开发-MFC Edit Control 捕捉回车用法

  1. 头文件添加  
  2. virtual BOOL PreTranslateMessage(MSG* pMsg);  
  3.   
  4. 这个函数是捕获到所有Edit Control回车的消息。  
  5. BOOL Ctext1Dlg::PreTranslateMessage(MSG* pMsg)  
  6. {  
  7.     if(WM_KEYDOWN == pMsg->message && VK_RETURN == pMsg->wParam)     
  8.       {       
  9.         if(GetFocus()== GetDlgItem(IDC_EDIT1))  //根据不同控件焦点判断是那个在执行  
  10.         {  
  11.             updateData(true);  
  12.             dosomething...  
  13.         }  
  14.           
  15.         if(GetFocus()== GetDlgItem(IDC_EDIT1))  //根据不同控件焦点判断是那个在执行  
  16.         {  
  17.             updateData(true);  
  18.             dosomething...  
  19.         }  
  20.     )   
  21.     MessageBox(_T("adsf"));   
  22.     return 0; //这里必须返回0 否则运行报错  
  23. }   
  24.   刘某也用的第一种方式解决了
  25. 第二种方法 没有验证 重写EDIT中的WM_KEYDOWN消息  
  26. void CMyEdit::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);  
  27. {  
  28.     if (nChar == VK_RETURN)  
  29.     {  
  30.         TRACE(traceAppMsg, "return pressed\n");  
  31.         return;  
  32.     }  
  33.     CEdit::OnKeyDown(nChar, nRepCnt, nFlags);  
  34. }  

猜你喜欢

转载自blog.csdn.net/golddaniu/article/details/79761080
今日推荐