一个隐藏的ActiveX控件如何能触发或使它能处理鼠标事件?
假如有一个画图的控件,放置在CAxWindow上,把窗体设置隐藏,用作后台处理。鼠标在SDI的View上画图时我想同时画图的控件也能接收到鼠标画图的事件,怎样才能做到呢?
我试过用IOleInPlaceObjectWindowless接口,但感觉效果非常不好。哪位高手有什么解决方法的吗?
谢谢!

解决方案 »

  1.   

    CWnd::PreTranslateMessage
    virtual BOOL PreTranslateMessage( MSG* pMsg );
      

  2.   

    To syy64:此方法试过,效果也不太好。特别是鼠标按下的消息,有时得点击几下才有触发。
      

  3.   

    您的控件属于Wireless Window, 试一试直接发相应的消息给英藏的画图控件。
      

  4.   

    HWND hObjWnd = ::GetTopWindow(hAxWindowWnd) ;//
    ::SendMessage(hObjWnd, ....) 
    这样不就和CAxWindow::SendMessageToDescendants(...)一样了?用SendMessage是有消息被发送给控件的,因为有时点击是有效的,但我不明白是为什么有时就无效,发送给控件的消息是不是还经过什么处理或过滤?