【框架-MFC】CHtmlView(chenlu-1):将网页嵌入MFC的视图中

本文深入探讨了在C++程序中如何通过获取主窗体、活动窗口、工作区及视图,进而进行模板类的创建与使用。详细介绍了从主窗体到工作区再到视图的链式访问方法,以及如何利用动态类型转换实现视图类的特定功能调用,最后通过实例展示了如何创建并激活新的模板工作区。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//当前存在之前的地方派生
CWnd *pCWnd = AfxGetMainWnd();//
CMainFrame *pCMainFrame = (CMainFrame*)pCWnd;//获得主窗体
CMDIChildWnd *pMDIChildWnd = pCMainFrame->MDIGetActive();//获得主窗体中的活动窗口
CDocument *pDocument  =pMDIChildWnd->GetActiveDocument();//获得活动的工作区
POSITION pPosition= pDocument->GetFirstViewPosition();//获得活动区第一个视图的位置
CView* pView = pDocument->GetNextView(pPosition);//根据当前视图获得下一视图
pView->IsKindOf(RUNTIME_CLASS(CWebView));//往子类拓展true 拓展成功 false拓展失败
CWebView* pWebView= (CWebView*)pView;
CFrameWnd *pFrameWnd= pView->GetParentFrame();//获得主创就
pFrameWnd->IsKindOf(RUNTIME_CLASS(CChildFrame));
//在新的模板中创建
CWinApp *pWinApp= AfxGetApp();//获得App
CTestApp *pDYBApp =(CTestApp*)pWinApp;//转换成子类
CDocTemplate* pTemplate= pDYBApp->m_pDocTemplateWeb;//获得子类中的Doc模板
ASSERT_VALID(pTemplate); //判定pTemplate可用
CFrameWnd *pFrame= pTemplate->CreateNewFrame(pDocument,pMDIChildWnd);//创建窗体,
pTemplate->InitialUpdateFrame(pFrame, pDocument); //设置当前pFrame为活动视图
CView *pCView2 = pFrame->GetActiveView();
CWebView* pWebView= dynamic_cast<CWebView*>(pCView2);//强制转换,地址不偏移
pWebView->Navigate2(_T("www.baidu.com"),NULL,NULL);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值