现在只能实现在对话框内显示一个网页文件,,但如果点击网页文件中的某个链接的话,,却还是在IE中进行打开的,,正在想如何始终在该对话框内完成。。

希望各位大神能指点。。

这个要用到 ActiveX 控件了,向对话框里面插入一个 WebBrowser控件,之后使用就可以了!
=============================
利用WebBrowser控件创建自己的浏览器
①新建一个基于对话框的工程,命名为test,然后在对话框上单击右键,选择
Insert ActiveX Control…在弹出的对话框中选择MicroSoft Web浏览器,点击OK。
此时对话框上已经出现了WebBrowser控件,调整它的大小以适合对话框的大小。

②选择WebBrowser控件,点击View/ClassWizard,选择Member Variables,单击
Add Variable按钮,此时会弹出两个对话框,均点击确定即可。然后给该控件加
入一个变量,我们把它命名为m_ctrlWeb。

③在ClassWizard中选择OnInitDialog()函数,在里面加入如下代码:

m_ctrlWeb.Navigate("http://www.baidu.com", NULL, NULL, NULL, NULL);

第一个参数即你要浏览的URL地址,可以是一个文件,也可以是一个地址
(如:http://www.baidu.com)

而如果想要禁止在新窗口打开,则需要添加控件事件处理函数NewWindow3()添加如下函数

void C网页Dlg::NewWindow3Explorer1(LPDISPATCH* ppDisp, BOOL* Cancel, unsigned long dwFlags, LPCTSTR bstrUrlContext, LPCTSTR bstrUrl)
{// TODO: 在此处添加消息处理程序代码* Cancel = TRUE;VARIANT vInfo;m_webBrowser.Navigate(bstrUrl, &vInfo, &vInfo, &vInfo, &vInfo);
}

如在新窗口中打开链接和在新标签中打开链接是两个不同的事件(NewWindow2,NewWindow3)

在mfc对话框中添加一个显示网页的窗口相关推荐

  1. MFC对话框中添加工具栏

    1. 在资源管理器中添加 ToolBar资源,资源 ID为 IDR_TOOLBAR1 加入两个工具栏按钮 2. 在对话框头文件 XxxDlg.h中添加工具栏变量 CToolBar m_toolBar; ...

  2. 在MFC对话框中显示图片的三种方法(有两种使用OpenCv)

    最近写了一个用对话框显示图片的程序,这里将学习到的东西整理一下: 编程环境:VC6.0+OpenCv1.0 准备工作:用VC6.0生成一个对话框外壳(全被采用默认设置),然后在对话框中添加一个静态控件 ...

  3. MFC对话框中的工具栏、状态栏设计小结

    对网上的资料结合自己的实践的总结,由于大部分都是网上先辈们的经验,这里只是直接将内容拿来,格式优化一下更易读而已. 对话框中建立工具栏的方法 工具栏中包含了一组用于执行命令的按钮,每个按钮都用一个图标 ...

  4. 在MFC对话框中显示html网页

    最近在写一个小软件,想在MFC对话框中显示帮助文档,都是html格式的,上网找了好多资料,用一个CHtmlCtrl类的东西,但是网上找的这个类放在VS2005下编译不过去,老是提示错误.于是几经修改, ...

  5. MFC对话框中显示图片的四种方法

    先分类如下: (一) 非动态显示图片(即图片先通过资源管理器载入,有一个固定ID) (二) 动态载入图片(即只需要在程序中指定图片的路径即可载入) 为方便说明,我们已经建好一个基于对话框的工程,名为T ...

  6. 在MFC工程中新建一个对话框

    1.MFC简介 Microsoft Foundation Class微软基础类库,这个类集以层次结构组织起来,其中封装了发部分的Windows API函数和Windows控件,它所包含的功能设计整个W ...

  7. MFC对话框中使用GDI画二维码

    在对话框中添加 WM_PAINT的相应消息, 具体函数实现,如下: void CTaskRewardDlg::OnPaint() {CPaintDC dc(this); // device conte ...

  8. 如何在系统菜单中添加一个自己的菜单项

    CSDN地址: http://topic.csdn.net/u/20080722/18/8517e419-7788-4d1c-9029-7a806f5da46c.html 全文: 如题,目前我要做的就 ...

  9. access数据库中怎么添加计算机,向access2007数据库中添加一个或多个记录

    时 间:2008-10-22 13:27:07 作 者: 摘 要:向Access2007数据库中添加一个或多个记录 正 文: 本文介绍如何向 Microsoft Office Access 2007 ...

最新文章

  1. 网络编程学习笔记(getservbyname和getservbyport函数)
  2. OpenCV图像处理——深度学习样本制造
  3. 案例 | 铅酸蓄电池精细维护
  4. 【剑指offer】面试题61:扑克牌中的顺子(java)
  5. x86构架之-Intel8042键盘控制器简介
  6. C++之static关键字探究
  7. A.2.3-猜数字游戏
  8. VCL已死,RAD已死(5)
  9. call_user_func_array 调用回调函数
  10. odb对象关系映射系统
  11. 什么是软件测试中的探索性测试(完整指南)(一)
  12. SPSS学习资料汇总
  13. echarts-横坐标文字竖着显示和倾斜45度显示
  14. Linux之RPM包的命名规则和包的依赖性
  15. set和hashset区别及用法
  16. Android获取硬件设备详细信息
  17. JDBC--基础JDBC
  18. 马尔科夫决策过程(Markov Decision Process)
  19. ddr5内存上市时间_DDR5内存何时能普及,及价格稳定下来?
  20. Win7 更新 80072EFE 错误

热门文章

  1. Python:实现相等的每月分期付款算法(附完整源码)
  2. @SpringBootTest注解进行单元测试
  3. python自制英汉词典
  4. 8910DM:FOTA 升级指导
  5. java ppt转html_c# Office文件转换成Html格式(将PPT转换成HTML)
  6. Waves项目评估报告(中文报告全文下载)
  7. python进行对应分析_对应分析数据
  8. 编写程序,输入百分制成绩,输出其对应的成绩等级。90~100分对应A等, 80~89对应B等,70~79对应C等,60~69对应D等,0~59对应E等。
  9. 用求解图内节点是否可达的算法来解决IFDS问题
  10. E002-CRC查表法-表的由来与实现1