如何判断鼠标在工具栏上,并强制刷新工具栏?

解决方案 »

  1.   

    Get toolbar rect,then use PtInRect
      

  2.   

    你要响应对话框PreTranslateMessage(MSG* pMsg)消息。
    BOOL CMyDialog::PreTranslateMessage(MSG* pMsg) 
    {
    if(pMsg->message==WM_MOUSEMOVE)
    {
           刷新操作…………
         }
    return CDialog::PreTranslateMessage(pMsg);
    }
      

  3.   

    工具栏也是窗口,应该有OnMouseMove事件。比如派生一个CToolBar的子类来处理这件事情。
    或者获取工具条的窗口位置,然后在view类中SetCapture,检测鼠标的位置是否在工具条位置上来判断。
      

  4.   

    WindowFromPoint
    取得鼠标所在窗口句柄,
    GetClassName
    取得窗口类
    判断是否为工具栏