分享好友 最新动态首页 最新动态分类 切换频道
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

最新文章
Stable Diffusion Lora模型训练详细教程
通过Lora小模型可以控制很多特定场景的内容生成。 但是那些模型是别人训练好的,你肯定很好奇,我也想训练一个自己的专属模型(也叫炼丹~_~)。 甚至可以训练一个专属家庭版的模型(family mo
国内最懂Agent的大模型公司,带给了我 OpenAI 给不了的惊喜!
国外,比尔·盖茨预言 Agent 会颠覆软件行业、改变每个人与计算机交互的方式。国内,李彦宏认为 Agent 是AI的未来,正率领百度 All in 其中~而这两年真正火爆全网的Agent项目其实并不多,笔者印象深刻的有两个,一个是“斯坦福小镇”,另
小飞兔下载(仿站扒站小工具) v19.7专业版
小飞兔下载是一款只需输入一个网址就能下载一个网站的软件, 它可以从 Internet 下载你想要的网页,主要是用来快速搭建网站、 深层分析网站、网站克隆、离线浏览等。软件四大功能:整站下载、 网页批量下载、整站批量下载、整站图片下载。
《生成式人工智能时代的伦理问题》学习笔记
本教程来自Linkedin Learning(原Lynda.com) 英文原名《Ethics in the Age of Generative AI》学习笔记:《Ethics in the Age of Generative AI》2. 生成式人工智能的伦理挑战:   - 数据隐私: 生成式AI需要大量数据进行训练,可能涉及隐私
ai智能生成文字免费版:软件与生成器
ai智能生成文字免费版:软件与生成器随着科技的飞速发展人工智能()逐渐成为咱们生活中的得力助手。在文字创作领域智能生成文字免费版软件不仅为广大创作者提供了极大的便利,还极大地增强了工作效率。本文将围绕智能生成文字免费版的软件
https百度设计_今日百度启用HTTPS设计教程
摘要:https百度设计,今日百度启用HTTPS设计教程,新片场素材小编孟安https百度设计,今日百度启用HTTPS设计教程相关内容整理,如果您对https百度设计,今日百度启用HTTPS设计教程感兴趣欢迎访问免费阅读。https百度设计,今日百度启用HTTPS设
Google Performance Max指南:优化广告的提示
Google的Performance Max广告活动在三年多前结束测试阶段,已成为新手和有经验的营销人员中非常受欢迎的一种广告活动类型。在本文中,我们将详细解读Google Performance Max广告活动是什么,它与其他广告类型的区别ÿ
关键字推广(关键词推广的好处)
网页页面中关键词布局 百度营销关键词在网页页面中的出现,也是很有思维逻辑,用黑体字,斜体字来注重关键词,一两次就充足了。这样不仅会吸引访客的眼球,还会受到百度搜索引擎的高度关注。百度推广关键词的选择 需要以企业产品和服务为核
java实现站内搜索
1.站内搜索 在以往的网站建设,企业系统的搭建过程中,因为信息比较简单,比较少,站内搜索可能不是必要的选项,而今,时代的发展, 信息量的增大,网站逻辑的复杂,企业自身对信息架构、
免费网站快排软件有哪些,提升网站排名的利器,免费网站快排软件有哪些好用
免费网站快排软件有很多,如“SEO优化大师”、“站长工具”、“爱站网”等,这些软件可以帮助网站提升排名。“SEO优化大师”是一款功能全面的SEO工具,可以优化网站关键词、提高网站权重等;“站长工具”则是一款综合性的站长助手,提供网
相关文章
推荐文章
发表评论
0评