分享好友 最新动态首页 最新动态分类 切换频道
Qt项目(7)Qt实现网页浏览器
2024-12-25 14:24

本文要实现的功能有,浏览器导航栏,包括"前进"、“后退”、”刷新“;可实时刷新界面title和图标;可以查看历史记录,设置主页,查看网页源代码;可实现网页的缩放;实时显示网页加载进度;可以进行超链接跳转。功能之间相对独立,没有复杂的逻辑关系,代码梳理的应该比较明晰了,下面按照顺序介绍开发步骤,并介绍一些注意事项,附上源码工程。

Qt4使用QWebView实现浏览器相关的功能,看网上都说Bug很多,到了Qt5.5,使用QWebEngine模块及其中的类代替QWebView实现浏览器的功能,官方介绍,内部技术修改了,总之现在比较稳定了。
QtWebEngine模块提供了一个Web浏览器引擎,可以方便地在没有本地Web引擎的平台上将来自万维网的内容嵌入到Qt应用程序中。比起以前的Qt Webkit提供了更好的支持。Qt WebEngine本身是一个非常庞大的项目,涉及了HTML、CSS、JavaScript等多方面的知识,Qt对于Qt Webegine的支持是在逐渐加强的。但就目前来说,一个网页浏览器的基本功能是全部支持的,包括了网页显示,导航菜单,显示网站图标,提供历史记录以及字符串查找功能。

 

并在.h中添加头文件即可使用。

 

4.由于每台主机的自身配置不同,可能会对qt程序产生影响。按照如下代码
可以实现显示一个网页的功能。

.h文件

 

.cpp文件

 
 
 
 

当用户点击历史记录项的时候,应该使用listwidget方法确定当前行,配合history()->goToItem(item);方法转到单击的页面。
10.响应超链接
以上0-9步骤完成之后你会发现,界面是无法响应超链接的,当鼠标放在超链上是有部件的状态变化,可是点击却没有反应。有反应说明Qt已经获取到了这个点击信息,不需要你再去根据鼠标位置单击事件做解析。那他的机制是,当你点击超链接,或者运行JavaScript、或其他会弹出界面的操作时,他会去调用虚函数,creatwindow,但默认这个函数中没有内容,因此需要在继承自QWebEngineView的子类中重写。例如在该函数中打印某信息,当你点击超链或者查看源代码时,控制台会打印这句话。在该函数中直接返回this,将实现超链的响应,即网页的跳转。当然该函数提供了一个参数,这个参数是网页传递的,即QWebEnginePage::WebWindowType type,查看帮助可知该枚举类型有四类,可以在重写的creatWindow中根据不同的type执行不同的操作。

以上步骤介绍比较详细了,当然有一些必要的判断操作,提示操作以及错误判断未提及,这是比较容易的。稍后贴出代码。

 
 
 
 

其中注释中序号与”步骤“相对应。

 
 

自定义的继承自QWebEngineView的子类,为了重写creatwindow函数以实现网页跳转。

 
 
 
 
  • 🎄我的主页
  • 🎄【QT实战】汇总导航
  • 🎄上一篇:Qt项目(6)Qt实现天气预报
  • 🎄下一篇:Qt项目(8)Qt实现音乐播放器
END

最新文章
SEO核心要素解析,提升网站排名的五大关键技巧
SEO必知要点:优化关键词、高质量内容、合理布局、内外链策略、网站速度与移动优化。掌握这些技巧,优化网站结构,提升用户体验,助力网站排名更上一层楼。随着互联网的快速发展,(搜索引擎优化)已经成为网络营销的重要手段,对于企业和
全球十大电信公司排行榜-全球500强电信公司排名
  在世界500强企业中,哪些电信公司是营收最高、实力最强的呢?下面让我们一起来看看全球十大电信公司排行榜吧!  1、 美国电话电报公司  2、 威瑞森电信  3、 日本电报电话公司  4、 美国康卡斯特电信公司  5、 中国移动通信集
云和云和SEO优化的方法有哪些?
如今,许多云和公司开始建设网站,希望通过网站获得更高的流量和转型,同时也希望自己的成本更低,然后需要云和优化网站SEO,但很多人不知道该做什么,让圣世传媒的编辑向你介绍。一.关键词挖掘首先准确定位网站的目标关键词,然后利用关键
免费体验:Chat GPT人工智能网页版的魅力解析
随着人工智能技术的飞速发展,Chat GPT作为一款强大的人工智能助手,已经成为了广大用户的关注焦点。近日,Chat GPT推出了网页版,并提供了免费体验的机会。本文将从多个角度为您解析Chat GPT人工智能网页版的魅力所在。首先,Chat GPT网页
广州市动景计算机科技有限公司厂商介绍及软件下载
广州市动景计算机科技有限公司UC事业部,UC专注移动互联网业务创新,致力于打造简单、可信赖的移动互联网信息服务平台。其生态体内相关业务线还包括神马搜索、阿里应用分发等。定位于“大数据新型媒体平台”的UC目前每月活跃用户数超过4亿
【苏木•动态】科技助残 让爱“看得见”
为不断丰富残疾人的精神文化生活,把党和政府的温暖送到人们心中,近日,吉忽伦图苏木便民服务中心为3名视力障碍残疾人发放小度智能音箱,为视障群体提高品质生活。小度智能音箱体积小,按键少,适合视力残疾朋友操作。既可以用它听音乐、
如何高效搜索图片:技巧与方法分享
怎么搜索图片 (How to Search for Images)在数字化时代,图片已经成为我们日常生活中不可或缺的一部分。无论是社交媒体、博客、新闻报道还是在线购物,图片都能有效传达信息和情感。然而,如何高效地搜索到所需的图片却是一个值得探讨的话
【知云文献翻译选中了不翻译是怎么回事】
《知云文献翻译app平板下载》知云文献翻译官网:http://www.zhiyunwenxian.cn/,知云文献翻译app下载手机版为阅读英文及多语种PDF文献、书籍设计,内置了先进的PDF阅读器与智能翻译功能,让您只需轻轻划选段落,即可享受秒速的中英互译体验
Concrete5 CMS实战:PHP网站管理系统国外高级教程
PHP是一种广泛使用的开源脚本语言,特别适用于网页开发。它嵌入在HTML中,可以用来创建动态网页内容。由于其易学易用的特性,PHP成为了许多初学者和专业开发者的首选。它支持多种数据库,如MySQL、PostgreSQL等&#x
ChatGPT页面加载不出来?解决方案及常见原因
检查网络连接:首先确保你的设备已经连接到互联网。你可以尝试打开其他网页或使用其他在线服务,以确认网络连接是否正常。切换网络环境:如果你在使用Wi-Fi时出现问题,可以尝试切换到移动数据网络,或重新连接Wi-Fi网络,确保网络信号强度
相关文章
推荐文章
发表评论
0评