1.Qt中嵌入web网页的源码页内几种实现方式
Qt中嵌入web网页的几种实现方式
Web网页的界面交互相较于Qt客户端拥有较大优势,能提供丰富且便捷的取网用户体验,使得在客户端中嵌入web网页成为可能。源码页内这能结合web的取网优势与客户端特性,丰富界面功能。源码页内本文将介绍几种Qt客户端中嵌入web网页的取网壹度源码实现方式及步骤。基于Qt自带控件实现
Qt内置的源码页内控件用于访问网页,集成webkit内核与google引擎,取网类似简易版浏览器。源码页内此方案在Qt5.9.6中采用QWebEngineView。取网环境配置:Qt5.9.6 + VS
检查webenginewidgets模块是源码页内否配置成功。
开发流程:通过拖拽控件或直接new使用,取网代码示例与效果展示。源码页内
总结:实现简单,取网但浏览器内核不支持视频解码,源码页内水平线源码需编译源码解决,成本较高。
嵌入Chrome.exe进程实现
此方法启动本地Chrome浏览器,实现与本地浏览器功能等同。通过启动浏览器进程并传入参数,再获取窗口句柄,实现嵌入。网页表单工具源码环境配置:Qt5.9.6 + VS
检测Chrome安装情况,获取Chrome.exe路径。
开发流程:启动Chrome.exe,获取窗口句柄,转化为QWindow,嵌入界面。
总结:功能完整,网站源码被授权但浏览器状态与客户端状态耦合,用户行为影响嵌入界面显示。
基于Chrome的CEF3实现
Chromium Embedded Framework(CEF)提供嵌入式浏览器支持。此方案需下载编译包,参照官方文档,实现嵌入网页界面。环境配置:Qt5.9.6 + VS
下载并配置CEF与chromium源码。游戏家族主页源码
开发流程:参考示例文档,配置工程,实现嵌入。
总结:功能完整,但受限于源码编译环境,实际使用效果受限。
基于微软的WebView2实现
Microsoft Edge WebView2 控件允许嵌入Web技术(HTML、CSS、JavaScript)到本机应用程序。此方案通过读取进程窗口句柄实现嵌入。环境配置:Qt5.9.6 + VS,安装WebView2运行包。
开发流程:下载示例文档,配置NuGet包,启动WebView2进程,读取窗口句柄,嵌入界面。
总结:实现简单,功能与用户体验较好,但无法国产化。
总结
根据需求选择不同方案:仅显示网页时,推荐基于Qt自带控件;需视频播放时,考虑基于CEF的实现;受限环境,可选用WebView2。嵌入Chrome.exe方案存在不可控因素,不适合作为常规方案。通过比较不同方法的优缺点,可选最优方案满足需求。