描述:
第8章,第二例,映射宏:
.h文件
protected:
afx_msg void OnBeforeNavigateExplorer1(LPCTSTR URL,
long Flags, LPCTSTR TargetFrameName,
VARIANT FAR* PostData, LPCTSTR Headers, BOOL FAR* Cancel);
afx_msg void OnTitleChangeExplorer2(LPCTSTR Text);
DECLARE_EVENTSINK_MAP()
.cpp文件
BEGIN_EVENTSINK_MAP(CEx08bView, CView)
ON_EVENT(CEx08bView, ID_BROWSER_SEARCH, 100, OnBeforeNavigateExplorer1, VTS_BSTR VTS_I4 VTS_BSTR VTS_PVARIANT VTS_BSTR VTS_PBOOL)
ON_EVENT(CEx08bView, ID_BROWSER_TARGET, 113, OnTitleChangeExplorer2, VTS_BSTR)
END_EVENTSINK_MAP()
问题1,在映射宏中,100,113(.cpp文件)如何定义?随意给的吗?
2,OnBeforeNavigateExplorer1,OnTitleChangeExplorer2这两个事件发生的时间是否,与100,113两个值有关?
3,.h文件有那么多参数,然而.cpp文件映射只有函数名,那么程序是如何保证那些参数正确调用?
解决方案1:
这个是COM组件里面自己定义的。你不能改变这个值。
当COM组件里面把这个事件投到你的主宿主来的时候,你就可以得到这两个消息了。
参数是COM组件产生的。与你无关。