我写的ActiveX控件在ActiveX control container 里测试提示信息会出现,而且ActiveX空间的PreTranslateMessage消息也能触发。但是在我的程序里为使莫不能触发?ActiveX的cpp文件
class MyActiveX::PreTranslageMessage(MSG *pMsg) {
m_ToopTip.RelayEvent(pMsg);
}应用程序伟Single-Document结构
Class MyView::PreTranslateMessage(MSG *pMsg) {
MyActivex.PreTranslageMessage(pMsg);
}

解决方案 »

  1.   

    我也碰到过这个问题,再容器里因为他不是存在于一个窗体上,所以不会被他的父窗体截获,
    也就没什么问题了。但再一个窗体上使用的时候,第一次可以被控件截获,第二次就被窗体
    所截获,这应该是因为第一次被控件截获后又转发给了父窗体,而父窗体的到消息后就独揽了。
    解决的方法是再控件截获消息处理的后面添加:
    SendMessage (pMsg->message, pMsg->wParam, pMsg->lParam);
    return TRUE;
    就行了。