VC++ Webbrowser2控件的缩放功能

VC++集成DWGdirect控件实现DWG图纸读取与交互开发实战 在工业软件与CAD二次开发领域,DWG文件作为AutoCAD原生格式,承载了复杂的几何与属性数据。其解析原理涉及坐标系转换、实体遍历与图层控制等核心技术,对实现自主可控的图纸处理能力具有重要价值。通过ActiveX控件集成,开发者能在VC++/MFC环境中快速嵌入专业图纸浏览与处理功能,广泛应用于图纸审查、数据提取与轻量批注等场景。本文基于DWGdirect控件,详细讲解在TDNET框架中实现DWG文件加载、实体遍历及用户交互的工程实践,涵盖性能优化与常见问题排查,为VC++开发者提供高效集成方案。 阅读详情

最近一直忙着做毕业设计,博客好久没有更新啦。。 今晚心情愉悦,就把之前用Webbrowser控件的几个简单功能写一下吧。

关于Webbrowser控件我自己了解就是嵌入在各种客户端软件中的浏览器控件啦,各种编程语言都有带的控件,比较常用,不过微软包装的很好,很难去深入。

下面我介绍一下:如何浏览网页和缩放网页啦。

第一步、当然是在资源视图对话框界面中,在工具箱中右击选择选择项,然后到COM组件中添加Microsoft Web Browser控件。这样工具箱中就有了Webbrowser控件啦。

第二步、在类视图中右击项目名称选择添加类,一个ActiveX控件中的MFC类,然后还是选择Microsoft Web Browser控件,这样就添加的CWebBrowser2类就和Microsoft Web Browser控件对应了。

第三步、这时我们还需要在添加一个和Webbrowser控件相关联的成员变量,以便于我们操作控件,就是在资源视图对话框中选中Webbrowser控件,右击添加变量,勾选空间变量,其他怎么设置应该都懂得。比如变量名字定为m_web。

第四步、m_web.Navigate("www.baidu.com", NULL, NULL, NULL, NULL); //浏览指定网页。

m_web.GoForward();//前进

m_web.m_web;//后退

m_web.Refresh();//刷新

第五步、这里我重点介绍一下Webbrowser控件的缩放方法:

我的用处是在打开网页后自动缩放到指定的比例,这里需要注意必须保证网页加载全部结束后,才能执行缩放命令,否则如果在m_web.Navigate命令后立马执行缩放命令就会出现错误。所以在这里需要给控件添加一个加载完毕事件,待网页加载完毕后在事件中执行缩放命令即可。具体方法是在资源视图对话框中选中Webbrowser控件,右击添加事件处理程序,消息类型选择Document Complete,具体添加代码如下红色字体:

BEGIN_EVENTSINK_MAP(CwebDlg, CDialog)
ON_EVENT(CwebDlg, IDC_EXPLORER1, 259, CwebDlg::DocumentCompleteExplorer1, VTS_DISPATCH VTS_PVARIANT)
END_EVENTSINK_MAP()
void CwebDlg::DocumentCompleteExplorer1(LPDISPATCH pDisp, VARIANT* URL)
{
// TODO: 在此处添加消息处理程序代码
int zoom = 30;
CComVariant varZoom((int)zoom);  // nZoom是要设置的缩放比例
m_web.ExecWB(OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DODEFAULT, &varZoom, NULL); 

}

第六步、这样就大功告成了,大家亦可使用两个按钮,控制缩放变量的值,实现步进放大缩小功能。最后提一下这是VS2008测试环境,VC6中ExecWB中的参数可能需要适当变化,具体我也记不得啦,自己google啦。

软件设计之简单浏览器的实现 工具:VC++6.0 / window10 开发过程中的问题及解决 以下为在软件设计周实现简单浏览器过程中遇到的问题及解决方法,希望能对大家有所帮助! 浏览器对话框最大化和最小化 修改对话框的属性即可实现最大化和最小化按钮的增删 右击对话框–>属性–>样式–>勾选最大化框、最小化框 勾选前效果如下: 勾选后效果如下: 控件和MFC窗口一起最大化和最小化 在添加最小化和... 阅读详情

相关推荐

MFC在2024年的实用价值:从原理到实战的Windows GUI编程指南

Windows GUI编程是桌面应用开发的基础领域,其核心在于理解操作系统提供的原生API与消息驱动机制。MFC(Microsoft Foundation Classes)作为一套经典的C++类库,通过面向对象方式封装了底层的Win32 API,将窗口创建、消息处理、图形绘制等复杂操作抽象为CView、CDocument等类,显著降低了开发原生Windows应用的复杂度。这一技术价值在于它提供了对Windows生态的深度访问能力,尤其适合需要开发轻量、高效、无依赖原生工具的场景。在工业控制、金融、医疗等领域

weixin_30247781的博客 366

设置Webview的页面缩放大小

之所以要把这个简单的WebView拿出来单独写除了简单的webview加载页面缩放的设置还是因为在此Fragment中有个小细节需要单独说下 是这样的,此Fragment依托于上层Activity,上层Activity继承自ActionBarActivity,并且在activity中应用ToolBar,在Activity上ToolBar上跟跳转到Fragment要显示的 标题不一样,里面涉及到

谢栋的专栏 1万+

VC++写的POP3邮箱轮询工具,带360式UI和IE内核邮件预览

这是一款用VC++开发的Windows桌面端POP3邮件监控小工具,能定时连接邮箱服务器检查新邮件,并把标题、发件人、时间、正文内容等本地解析显示。程序自带完整可编译工程(Client.dsw/.dsp),所有源码开放,包括POP3协议通信模块(MyPOP3.cpp/h)、用户账户配置管理(MailUser.cpp/h)、邮件内容渲染逻辑(MailShow1.cpp)、仿360风格的自定义按钮控件(MyButton.*)以及基于IE内核的嵌入式网页浏览器封装(webbrowser2.* + CustSite

potato的博客 227

如何在WinForms 应用中使用 WebView2

本教程可帮助你:设置开发工具。使用C# Windows 窗体 应用 (.NET Framework)Visual Studio 项目模板创建 WinForms 项目。安装 WinForms 项目的Microsoft.Web.WebView2SDK 包。在此过程中了解 WebView2 概念如。步骤 1 - (可选)克隆或下载 WebView2示例存储库执行以下任一操作:按照以下部分中的步骤...

farway000的博客 4547

VC++桌面应用集成Edge WebView2:现代Web技术与原生开发的融合实践

在现代桌面应用开发中,浏览器内核嵌入技术是实现混合开发模式的关键。其核心原理是通过将Chromium等现代浏览器引擎作为控件集成到原生应用中,使C++、C#等语言开发的程序能够直接渲染HTML/CSS/JavaScript内容。这项技术的核心价值在于融合了桌面应用的系统级能力与Web技术的快速迭代优势,既能调用本地文件、硬件接口,又能利用Web生态实现界面动态更新。在实际应用场景中,这种模式特别适合需要复杂数据可视化、频繁界面更新的企业级桌面软件,如报表系统、监控仪表盘等。本文以VC++项目为例,深入解析如

weixin_30416871的博客 427

C#浏览器开发实战:9款开源源码对比与内核选型指南

浏览器内核是网页渲染的引擎,决定了HTML、CSS和JavaScript的解析方式。C#作为桌面应用开发的主流语言,常通过WebBrowser、WebView2、CefSharp等控件嵌入浏览器能力,这些控件本质上是对内核的封装。理解内核差异是选型的前提:Trident兼容老旧系统,Blink代表现代HTML5标准,Gecko和WebKit各有特定场景。无论是开发内部工具、实现多标签管理,还是构建类Chrome界面,都可以从开源源码中获取可复用的代码模式。本文以9款C#浏览器源码为样本,从工程结构、事件绑定

weixin_31960565的博客 238

限制webview缩放和隐藏zoombar(2.3)

java代码: webView = (WebView) this.findViewById(R.id.webView); WebSettings settings = webView.getSettings(); settings.setJavaScriptEnabled(true); settings.setSupportZoom(true);// 支持缩放 settings.

zhangyf_3364的专栏 1181

WinForm桌面程序里用C#驱动ECharts图表实时刷新数据的实操方案

在WinForm应用中直接嵌入ECharts图表,不依赖外部Web服务器,靠WebBrowser控件加载本地HTML+JS资源。C#后端动态生成JSON格式图表数据,通过document.InvokeScript或window.external注入到ECharts实例中,支持按钮点击、Timer定时器等多种触发方式更新折线图、柱状图等常见类型。同时启用ObjectForScripting机制,让前端JS能回调C#方法——比如用户点击图表某根柱子,自动把对应X轴名称和Y值传回C#做后续处理。封装好的Clech

websocket5live的博客 429

[IE编程] WebBrowser控件中设置页面的缩放

如果你的程序中使用WebBrowser控件并且希望有和IE 一样的页面缩放功能(如下图),可以通过向IWebBrowser2 发送 OLECMDID_OPTICAL_GETZOOMRANGE,OLECMDID_OPTICAL_ZOOM 命令来实现。 示例代码如下: 取得缩放比例的范围: CComVariant varRange; spWebBrowser-&g...

anjichan4261的博客 1019

VC++实现网页自动填表功能

分析网页元素,实现网页自动填表的功能,非常好用的程序

MFC显示 web browser控件 去掉滚动条

在MFC中 加载html页面时 不让滚动条出现实现。 本代码思路为: 在web browser 控件中 实现事件 documentcomplete 当文档下载完毕时再显示出来,在此事件代码中去掉滚动条。在特定的场合,比如,我要在桌面软件中显示一个广告图片又不想滚动条的出现影响界面美观等 有兴趣可以访问我的博客 www.gddhx.com 在关于本站中有我的联系方式

webview支持页面缩放

1、webview支持页面缩放,普通经过以下设置就可满足80%的请求 //缩放开关 webView.getSettings().setSupportZoom(true); 设置此属性,仅支持双击缩放,不支持触摸缩放(在android4.0是这样,其他平台没试过) // 设置能否可缩放 webView.getSettings().setBuiltInZoomControls(true);

509

开放词汇目标检测(Open-Vocabulary Object Detection, OVOD)综述

综上,大多数工作均基于CLIP预训练的图像编码器和文本编码器。GlIP为解决目标检测任务提供了先例,后续很多工作常与目前较为广泛使用的目标检测网络结构相结合,从而构建新的开放词汇目标检测器。如ViLD基于Mask R-CNN、RegionCLIP基于R-CNN、VLDet和BARON基于Faster R-CNN。更具有创新性的工作是Detic,提出了使用图像分类的数据集来对目标检测器的分类头进行训练。

yangsn0719的博客 4400

VC 关于Web Browser控件操作IE,网页缩放功能实现。。

VC Web IE 缩放 大小 网页 

shen_wei的专栏 5260

LightRAG实战:从零构建中药知识图谱,解锁六种检索模式效能对比

本文详细介绍了如何使用轻量级RAG框架LightRAG从零构建中药知识图谱的实战过程。通过本地部署环境搭建、开源模型配置与《本草纲目》数据导入,文章重点对比了Naive、Local、Global、Hybrid、Mix和Bypass六种检索模式在中药问答中的效能差异,并提供了可视化图谱与优化心得,为开发者构建专业领域智能问答系统提供了实用指南。

weixin_29096377的博客 176

VINS-Fusion实战:从零搭建无人机视觉惯性导航系统(附ROS配置指南)

本文提供了一份详尽的VINS-Fusion实战指南,涵盖从硬件选型、传感器标定到ROS节点配置与参数调优的全过程。重点解析了如何将VINS-Fusion视觉惯性里程计系统与PX4飞控深度集成,并实现室外GPS融合,旨在帮助开发者从零搭建稳定、高精度的无人机视觉惯性导航系统。

lll78的博客 864

MFC中嵌入WEB BROWSER控件

1.      VC++ 中的WEB BROWSER控件该空件的作用是将一个网页嵌入到MFC对话框中(个人觉得这个空件很棒) 首先看一下效果图,我把内蒙古科技大学设计成了地图中心点 具体做法很简单(下面是引用百度上的网页原话,其实我也想做上微机和GPS导航才百度到的): 以前弄的一个东西和gps有关,当时vc不怎么会,上位机地图功能没实现一直很遗憾。 今天特地

WayToAccept的专栏 5212

嵌入式充电协议深度解析:从QC到PD3.1的技术演进与实战应用

本文深入解析了从QC到PD3.1的嵌入式充电协议技术演进与实战应用。通过电压谈判、协议芯片设计、Type-C接口优化等关键技术,详细介绍了快充协议在嵌入式系统中的实现挑战与解决方案,包括兼容性测试、EMC问题处理及空间限制创新设计,为开发者提供了宝贵的实践经验。

weixin_29194817的博客 419

MFC的WebBrowser控件 C++与JavaScript之间数据交互传递

----------------------------------------------------------------------------------------------------------------------------------------------- 最近开发MFC程序,用WebBrowser控件调用百度地图JavaScript API来展示轨迹,后台...

飞空静渡 1190

在ubuntu20.04中安装MATLAB时常见问题及解决方法

   如果你刚装完ubuntu20.04,这时你想要安装MATLAB2021A,在输入命令./install进行安装时,可能会报以下错误:    terminate called after throwing an instance of ‘JailContainerException’ what(): Error: 88: No JRE version parsed from/media/jzx/MATHWORKS_R2021A/sys /java/jre/glnxa64/jre/release   

慕羽★的博客 1万+

[AI] 企业内网部署大模型的三种常见方案:从“能用”到“好用”的技术选型指南

企业内网部署大模型的三种方案解析:本地模型安全但门槛高,平台方案(如Dify)最平衡推荐,混合架构适合进阶需求。关键路径是渐进式演进,从快速验证到平台化建设,核心在于流程优化而非单纯选模型。数据安全、成本可控和工程落地能力是决策重点。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 768

MFC之谷歌地图

原文地址:http://hi.baidu.com/number007cool/item/7a962a46e4d708f2dc0f6c86 以前弄的一个东西和gps有关,当时vc不怎么会,上位机地图功能没实现一直很遗憾。 今天特地在网上学了一下怎样在对话框中嵌入地图。网上似乎说的很复杂,这里简单讲下。 1、在vs2005下创建一个基于对话框的应用程序。 2、添加 webb

vivianshen0406的专栏 877

微信小程序 - 实现身份证OCR识别人像面与国徽面并提取字段信息,详解从手机相册选取或打开摄像头拍照上传身份证正反面图片ocr文字识别数据填充表单(提供免费纯前端ocr识别插件+百度OCR识别API)

微信小程序身份证识别,微信小程序身份证拍照、上传并OCR识别,微信小程序实现OCR扫描识别,微信小程序识别身份证免费插件,微信小程序实现身份证识别功能。ocr识别插件。微信身份证拍照后进行ocr识别,微信小程序OCR扫描识别身份证,OCR身份证实名认证+图片上传+拍照上传图片,微信小程序之身份证照片正反上传,小程序OCR身份证识别,微信小程序实现文字识别-ocr插件,微信小程序利用百度AI实现扫描身份证获取信息功能,基于微信小程序OCR插件实现身份证拍照、上传并OCR识别的示例demo,将上传的照片传到服务

🏆 前端领域优质创作者 8133

Silverlight/Windows8/WPF/WP7/HTML5周学习导读(7月16日-7月22日)

Silverlight/Windows8/WPF/WP7/HTML5周学习导读(7月16日-7月22日) 本周Silverlight学习资源更新 Silverlight DataGrid用法 模板列 黑眼圈之家 ...

weixin_33834075的博客 95

HBase在物流行业的应用:轨迹数据存储

想象一下,每天在全球范围内,数以亿计的物流包裹在各个城市、乡镇间穿梭。每一个包裹从发货人手中出发,经过仓储中心、转运站,最终到达收货人手中,这一路上都留下了它的“足迹”,也就是我们所说的轨迹数据。这些数据就像一个个拼图碎片,完整拼接起来后,能够清晰地呈现出整个物流网络的运行状况。例如,你在网上购买了一件心仪已久的商品,迫不及待地想知道它现在到哪儿了。物流平台实时更新的轨迹信息,让你可以准确了解包裹是在运输途中,还是已经到达附近的站点。

架构师的AI之路,分享AI应用开发架构的学习与实践。 965

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

在VC/MFC中嵌入Google地图——图文并茂

近期须要实验室须要将在无人机地面站中嵌入地图,在网上找了非常多资料,最终有些眉目了, 首先。做这个须要用到的知识有。MFC控件、MFC类库、JavaScript脚本语言。Google API、Google离线地图;因为google离线地图不怎么会。首先从google在线地图開始。 以下总结一下这几天搞google地图的步骤。有附图,对MFC和JS脚本语言不懂的同学实用。 在线Goog...

weixin_34176694的博客 371

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

上一篇: 在VS2008中添加运行、编译等按钮
下一篇: C++通过URL下载文件和创建文件夹方法
河海壹粟
博客等级 码龄14年 19粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值