Qt 如何解析 html 文件

html-css04

Qt 如何解析 html 文件,第1张

感觉自己去手动解析HTML文档有点费事。

我的思路:

把你的帮助文档做成带目录的(无非加一些锚或者用一些Frame),然后使用Qt中的QWebView把这些HTML文档呈现出来。

由于你的网页本身就带目录,所以显示出来也就自然带目录了。

而且,这样的话,你的文档也可以单独查看。

感觉自己去手动解析HTML文档有点费事。

我的思路:

把你的帮助文档做成带目录的(无非加一些锚或者用一些Frame),然后使用Qt中的QWebView把这些HTML文档呈现出来。

由于你的网页本身就带目录,所以显示出来也就自然带目录了。

而且,这样的话,你的文档也可以单独查看。

如果要做类似于Tooltip的提示的话,感觉正则表达式够用了。(或者了解一下Qt中的Online help是怎么实现的——就是光标停留在一个Qt类/方法的时候按F1会弹出Qt的帮助手册。)

OpenCV是一个开源的图像处理库,QML是Qt官方推出的一个描述性语言,Qt Markup Language,Qt Quick也是Qt官方推出的一个技术框架,在开发嵌入式、动态触屏等时有一定的优势。

模块的作用:

打一个很简单的比方,QML就是Qt的HTML,C++就是Qt的JavaScript,而Qt Quick相当于一些已经集成好的开发框架,使开发应用程序变得更加简单省事。

OpenCV是一个基于C/C++的开源图像处理库,和Qt本身没有太多关联,其主要是用于计算机视觉和图形开发,Qt的扩展应用OpenCV并不是每个应用程序都要用到,只是某些有特殊需求的应用程序可以更方便地使用Qt扩展的OpenCV应用。比如说用Qt开发一个软件,要使用人脸识别功能,就可以集成OpenCV来实现。

使用频率:

虽然说QML相当于HTML,C++相当于JavaScript,但是还是有一定区别:所有的网页都是通过解析HTML渲染出的,JavaScript虽然可以动态改变网页,但是最终还是通过改变HTML来达到效果;QML、C++的关系恰好反过来,在Qt中,C++是“更加底层”的,QML使用更加简单的标记语言的语法来调用底层的C++绘图支持API,从而提高程序开发的效率。

使用QML可以更快速、简捷地开发应用程序,在Qt中的使用频率也是很高的,不过这要根据特定开发人群、开发目标而定。有些开发者习惯直接使用C++开发,而有些开发者更喜欢简单的QML,很多时候都是“用QML开发用户界面,用C++开发业务逻辑”,但是用C++开发用户界面的也不在少数。

Qt Quick是一套开发框架,核心语言就是QML。

Qt Quick的使用频率不低,从Qt的New Project界面就可以看出,Qt Quick是和Qt传统的C++ Widge平起平坐的(当然还有Qt for Python等)。

OpenCV在不需要图形处理功能的情况下是不需要用到的,所以不怎么好说“使用频率”,因为这是针对特定的软件需求来的。

是否有必要学习:

Qt Quick能够使应用程序开发更有效率,但是并不是开发一个程序必备的,能用Qt Quick开发的,C++肯定能够做出来,但是耗费时间、精力更多。在Qt开发工作这一块,掌握Qt的核心功能是必须的,而且这还远远不够。在招聘的时候肯定是考察应聘者对Qt各种技术和开发思想的理解和掌握情况,而Qt Quick是官方推出的框架,掌握其开发方法应该是基本功。