如何才能捕捉到CEdit控件的click事件? 或者有其他的MFC控件可以输入文本, 又可以捕捉到click事件?

解决方案 »

  1.   

    从CEdit类中派生出一个子类,在子类中处理WM_LBUTTONDOWN消息。
      

  2.   

    如果你是多个CEdit控件都要相应Click事件,最好派生新类,在新类里响应CEdit的WM_LBUTTON消息
    如果只是处理少数几个CEdit的Click事件,也可以在PreTranslateMessage()函数中进行:
    if(pMsg->message==WM_LBUTTONDOWN &&
     ::GetDlgCtrlID(GetSafeHwnd,pMsg->hwnd)==nIDEdit)
    {
    //处理Click事件
    }
      

  3.   


    ::GetDlgCtrlID能这样用吗? 我这里编译都过不了.