CHtmlView 是MFC 的一个COM 接口类,可以通过创建子类继承方式来使用。
它使用于SDI架构,如果Dialog 要使用的话需要进行修改后实例化。
开始时通过一个其他控件如CStatic 进行占位,然后Create时附上此ID即可。
BOOL CHHZWView::CreateFromStatic(UINT nID, CWnd* pParent)
{
CStatic wndStatic;
if (!wndStatic.SubclassDlgItem(nID, pParent))
return FALSE;
// 获取静态控制的矩形区域并转换为父窗口的客户区坐标
CRect rc;
wndStatic.GetWindowRect(&rc);
pParent->ScreenToClient(&rc);
wndStatic.DestroyWindow();
// 创建 HTML 控制 (CHtmlView)
return
Create(NULL, // 类名
NULL, // 标题
(WS_CHILD | WS_VISIBLE ), // 风格
rc, // 矩形区域
pParent, // /父窗口
nID, // 控制 ID
NULL); ///框架/文档
}
重载这两个方法:
int CHHZWView::OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message)
{
//旁路 CView 文档/框架
return CWnd::OnMouseActivate(pDesktopWnd, nHitTest, message);
}
void CHHZWView::OnDestroy()
{
/*
if (m_pBrowserApp)
{
m_pBrowserApp->Release();
m_pBrowserApp = NULL;
}
*/
CWnd::OnDestroy(); // 旁路 CView 文档/框架
}